博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
十,几种特殊的类
阅读量:6768 次
发布时间:2019-06-26

本文共 2471 字,大约阅读时间需要 8 分钟。

hot3.png

1.Object类

在java中一切都是继承关系,一个类如果没有明确指定继承哪个类,则默认情况下是继承自Object类,所以只要是引用数据类型都可以用Object类来进行接收,比如实例接口,数组,一般对象等.

对于一个完整的类来讲,应该覆写Object类中的以下三个方法:

  • toString() ,对象打印时调用

  • equals() ,对象比较时调用

  • hashCode() ,

示例:

class Person{	public String toString(){	// 覆写了toString()方法 		return "Hello" ;	}};public class ObjectDemo05{	public static void main(String arg[]){		System.out.println(new Person()) ;	}};
输出对象时 ,实际上是输出了被覆写的方法 ,也就是说 toString()是表示对象信息的 .

:在开发中,绝对不要去继承一个已经实现好的类,而要实现接口或者抽象类,其中以接口为优先使用,可以避免单继承的局限.

2.匿名内部类

一个类内部还有一个类,称为内部类,匿名内部类是在抽象类和接口的基础上发展起来的.

匿名内部类使用的场景是一个类只会被使用一次,所以没有必要单独定义为一个类.

一般的开发中匿名内部类使用的比较少,使用比较多的情况是:

  • java的图形界面

  • Spring的开发框架

示例:

interface A{	public void fun() ;}class X{	public void fun1(A a){		a.fun() ;	}	public void fun2(){		this.fun1(new A(){                 //new A()即是匿名内部类			        public void fun(){			            System.out.println("Hello World!!!") ;			        }		                  }) ;	}};public class NonameDemo02{	public static void main(String args[]){		new X().fun2() ;	}};

3.包装类

java中提倡一中概念:一切皆对象,那么会引入一个矛盾点,数据类型分为基本数据类型和引用数据类型,那么基本数据类型是类吗?为了解决这一矛盾,设置了八个包装类,用类的形式表示基本数据类型.

八种包装类分为一下两组:

数值型: Integer, Byte, Short, Float, Double, Long (都是Number的子类)

其他类型: Character, Boolean

在包装类中存在装箱和拆箱的操作:

  • 装箱操作:将基本数据类型转换为包装类.

  • 拆箱操作:将包装类转换为基本数据类型.

示例:

public class FloatDemo01{	public static void main(String args[]){		float i = 10.3f ;		Float i2 = new Float(i) ;	// 装箱操作		float j = i2.floatValue() ;	// 拆箱操作		System.out.println(j * j) ;	}};

JDK1.5之前所有数据要手工装箱和拆箱,而且包装类本身不能进行数学运算,1.5之后加入了新特性,如foreach,可变参数,自动装拆箱操作.

public class FloatDemo02{	public static void main(String args[]){		float i = 10.3f ;		Float i2 = i ;	// 自动装箱操作		float j = i2 ;	// 自动拆箱操作		System.out.println(j * j) ;	}};

通过包装类可以取得最大值和最小值,如:

public class IntegerDemo03{	public static void main(String args[]){		System.out.println(Integer.MAX_VALUE) ;		System.out.println(Integer.MIN_VALUE) ;	}};
对于包装类而言 ,自动装拆箱是一个重要特点 ,但还有一个重要特点是可以将字符串变为基本数据类型 .

public static int parseInt(String s) throws NumberFormartException

示例:

public class IntegerDemo04{	public static void main(String args[]){		String str = "12sss3" ;	       // 字符串由数字组成		int i = Integer.parseInt(str) ;	// 将字符串变为int型		System.out.println(i++) ;	}};
当然也有 parseFloat()方法等 .需要注意的是 string中不能有非数字的其他字符 .

20150414

JAVA学习笔记系列

--------------------------------------------

                    联系方式

--------------------------------------------

        Weibo: ARESXIONG

        E-Mail: aresxdy@gmail.com

------------------------------------------------

转载于:https://my.oschina.net/u/2288529/blog/401610

你可能感兴趣的文章
lvs基于fwm定义集群服务
查看>>
事务的4种隔离级别
查看>>
使用goaccess解析nginx日志
查看>>
mvc问题小记
查看>>
awk 系列Part3:如何使用 awk 按模式筛选文本或字符串
查看>>
用cxfreeze打包Python3.3成exe文件
查看>>
关于c语言内存地址对齐的一点思考
查看>>
备份中心和VRRP
查看>>
Unity3D游戏开发之《愤怒的小鸟》弹弓实现的技能培训
查看>>
使用 IntraWeb (13) - 基本控件之 TIWLabel、TIWLink、TIWURL、TIWURLWindow
查看>>
浅析新手学seo的困惑及其应对方法
查看>>
MySQL数据库基础教程(下)
查看>>
在Windows 10中启用客户端Hyper-V
查看>>
Delphi 的接口(4) - 接口的属性
查看>>
怎么样编写Protobuf的.proto文件
查看>>
Python代码打包放到PyPI上
查看>>
tree
查看>>
Linux学习笔记——基本命令
查看>>
JAVA阻塞线程池
查看>>
求100以内的素数?
查看>>