标签:eth ret 需要 odi def div code 名称 body
内部类:如果一个事物,内部包含另外一个事物,那么这就是一个类 内部包含另一个类
例如:身体和心脏的关系,汽车和发动机的关系
分类:
1.成员内部类:
2.局部内部类(包含匿名内部类)
1.成员内部类:定义在外部类中的
格式:
修饰符 class 外部类名称{
修饰符 class 内部类名称{}
}
注意:内用外,随意访问;外用内,需要内部对象
使用方法:
间接方法:在外部类方法中,使用内部类;然后 main 只是调用外部类方法
直接方法:公式: 外部类名称 . 内部类名称 对象名 = new 外部类名称 () . new 内部类名称()
public class Body {
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void method() {
System.out.println("外部类方法");
new Heart().beat();
}
private String name;
public class Heart {
public void beat() {
System.out.println("蹦蹦蹦!");
System.out.println("我叫 " + name);
}
}
}
public class demo1 {
public static void main(String[] args) {
Body body = new Body();
body.setName("心脏");
body.method();
System.out.println("==================");
Body.Heart heart = new Body().new Heart();
heart.beat();
}
}
内部类的同名变量访问:
内部类访问内部类的成员变量:this.num
内部类访问外部类的成员变量:外部类名称 .this .num
2.局部内部类:定义在外部类,成员方法中的(只有该方法能用,出了方法就不行了)
格式:
修饰符 class 外部类 {
修饰符 返回值类型 外部类方法名(参数列表){
class 内部类名称 { }
}
}
public class Out {
public void method() {
class In {
public void methodIn() {
System.out.println("内部类方法");
}
}
new In().methodIn();
}
}
public class demo2main {
public static void main(String[] args) {
Out out = new Out();
out.method();
}
}
只该方法用,出了就不行
类的权限修饰符规则:
1.外部类:public / (default)
2.成员内部类:public / protected / (default) / private
3.局部内部类:什么都不能写
标签:eth ret 需要 odi def div code 名称 body
原文地址:https://www.cnblogs.com/aoligei/p/12384579.html