标签:外部 常量 成员 内存耗尽 自身 通知 自动 parse 继承
内部类分为:
内部类在编译时也可以生成独立的字节码(class)文件;
内部类可以直接访问外部类的私有成员,而不破坏封装;
在类的内部定义,与实例变量,实例方法同级别的类
创建内部类对象时,必须依赖外部类的对象
当外部类,内部类存在重名的属性时,会优先访问内部类的属性
package oop;
public class Test {
private String name="邓文雄";
class Header {
private String name="张三";
public void print() {
System.out.println(name);//打印内部类的属性
System.out.println(Test.this.name);//打印外部类的重名属性
}
}
public static void main(String[] args) {
Header s2=new Test().new Header();//创建内部类对象
s2.print();
}
}
成员内部类不能定义静态成员(可以定义静态常量)
不依赖外部类对象,可以直接创建或通过类名访问,可声明静态成员,跟外部类同级;
只能直接访问外部类的静态成员(实例成员需要实例化外部类对象)
创建:
定义在外部类方法中,作用范围和创建对象范围仅限于当前方法;
局部内部类访问外部类当前方法中的局部变量是,因无法保障变量的生命周期与自身相同,变量必须修饰为final
package oop;
public class Test {
private String name="的吧";
public void show(){
//定义局部内部类
class Inner{
private int age =12;
public void print(){
System.out.println(name);
System.out.println(age);
}
}
//创建局部内部类对象
Inner s=new Inner();
s.print();
}
public static void main(String[] args) {
Test s2=new Test();
s2.show();
}
}
所有类的父类
返回引用中存储的实际对象类型;通常用于判断两个引用中实际存储对象类型是否一致;
返回该对象的哈希码值,地址
返回该对象的字符串表示;可以重写该方法
比较两个对象的地址相不相同
- 当对象被判断为垃圾对象时,有JVM自动调用此方法,用以标记垃圾对象,进入回收队列;
package oop;
public class Test {
public static void main(String[] args) {
//类型转换:装箱;基本类型转换为引用类型;
int num1=19;
//使用Integer创建对象
Integer integer1=new Integer(num1);
Integer integer2=Integer.valueOf(num1);
//类型转换:拆箱;引用类型转换为基本类型
Integer integer3=new Integer(100);
int num2=integer3.intValue();
//JDK1.5后的自动装箱和拆箱
int num4=90;
Integer integer4=num4;
Integer integer5=new Integer(80);
int num5=integer5;
}
}
parse...()方法将字符串转换为基本类型
package oop;
public class Test {
public static void main(String[] args) {
Integer integer1=new Integer(100);
Integer integer2=new Integer(100);
//false
System.out.println(integer1==integer2);
//当integer的值大于-128,小于127时,调用valueof进行自动装箱,使用缓冲区进行;否则使用new Integer()进行自动装箱
Integer integer3=100;
Integer integer4=100;
//true
System.out.println(integer3==integer4);
Integer integer5=128;
Integer integer6=128;
//false
System.out.println(integer5==integer6);
}
}
标签:外部 常量 成员 内存耗尽 自身 通知 自动 parse 继承
原文地址:https://www.cnblogs.com/python-road/p/13220832.html