如果内部类和外部类具有相同名称的成员变量,在内部类方法调用时可以通过this关键区分:HelloWorld.this.name // 此为外部类中变量
2018-09-17
内部类对象的创建: 先创建一个外部类对象,在通过外部类对象调用内部类,生成一个内部类对象
HelloWorld hello = new HelloWorld(); //创建一个外部类对象
Inner i = hello.new Inner(); //创建内部类对象
HelloWorld hello = new HelloWorld(); //创建一个外部类对象
Inner i = hello.new Inner(); //创建内部类对象
2018-09-17
已采纳回答 / qq_倏已三年_0
问题描述的不是很明白,若想问这两个方法的作用,那么getter用来获取属性值,而setter用来设置属性值。也许你会再问为什么不直接对属性值进行读写,非要多谢2个方法出来?因为正常情况下,在类中会使用private修饰属性,此时外部是无法直接对private修饰的属性进行读写的。这时通过2个public修饰的getter/setter方法来实现外部对属性的读写。特别是外部对属性进行写的时候,可以在setter方法中定义对传入数据校验的规则,使其符合预期。
2018-09-16
public abstract class Shape { //主类,抽象类
public abstract void area(); //面积
public abstract void perimeter(); //周长
}
public abstract void area(); //面积
public abstract void perimeter(); //周长
}
2018-09-16
已采纳回答 / Bad___Boy
private属于访问修饰符的一种,在java种就跟英译一个意思,私密独有,在封装性中不能随意改写,只能通过getter/setter方法改写访问。修饰符分别为public、protect、default、private种,他们这就说明了面向对象的封装性,所以我们要适用他们尽可能的让权限降到最低,从而安全性提高。
2018-09-15
已采纳回答 / 策子刘
import java.util.Arrays;import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入字符串数: "); int num = input.nextInt(); System.out.println("请输入"+num+"组字符串: "); ...
2018-09-13