常用的类> ①"/>
JAVA <常用的类> ①
JAVA .<常用的类>
1. | 内部类 | 2. | Object类 |
---|---|---|---|
3. | Object类常用方法 | 4. | 包装类 |
5. | String类 | 6. | BigDecimal类 |
一.内部类:
概念:在一个类的内部再定义一个完整的类.
特点:-编译之后可生成独立的字节码文件。
-内部类可直接访问外部类的私有成员,而不破坏封装。
-可为外部类提供必要的内部功能组件
1.成员内部类 2.静态内部类 3.局部内部类 4.匿名内部类
1.成员内部类
外部类的一个实例部分,创建内部类对象时,必须依赖外部类对象。
Outer out = new Outer();
Inner in = out.new Inner();
当外部类、内部类存在重名属性时,会优先内部类属性.
成员内部类不能定义静态成员.
public class Application {public static void main(String[] args) {//newOuter outer = new Outer();//通过外部类来实例化内部类Outer.Inner inner = outer.new Inner();inner.in();inner.getID(); }
}
-----------------------------------------public class Outer {private int id=7;public void out(){System.out.println("这是外部类的方法");}public class Inner{public void in(){System.out.println("这是内部类的方法");}//获取外部类的私有属性public void getID(){System.out.println(id);}}
}
结果:这是内部类的方法
7
2.静态内部类
不依赖外部类对象,可直接创建或通过类名访问,可声明静态成员。
只能直接访问外部类的静态成员(实例成员需实例化外部类对象)。
Outer.Inner inner = new Outer.Inner();
Outer.Inner.show();
public class Application {public static void main(String[] args) {//可直接创建静态内部类对象Outer.Inner inner = new Outer.Inner();//调用方法inner.show();}
}
//外部类
public class Outer {private String name = "xxx";private int age=18;//静态内部类,和外部类相同static class Inner{private String address="上海";private String phone = "111";//静态成员private static int count = 1000;public void show(){//调用外部类的属性//1.先创建外部类对象Outer outer = new Outer();//2.调用外部类对象的属性System.out.println(outer.name);System.out.println(outer.age);//调用静态内部类的属性和方法System.out.println(address);System.out.println(phone);//调用静态内部类的静态属性System.out.println(Inner.count);}}
}
结果:xxx
18
上海
111
1000
3.局部内部类
定义在外部类方法中,作用范围和创建对象
更多推荐
JAVA <常用的类> ①
发布评论