Closed. This question needs details or clarity。它当前不接受答案。
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
2年前关闭。
我需要通过在Terminal类中创建一个公共hackCar方法来从TestCar类中打印属性。 hackCar方法需要将TestCar作为参数并打印TestCar的属性。需要注意的是,我不能碰到TestCar类中的任何东西。
我仍在努力在TestCar中打印两个私有属性。如何通过使用Test Car对象作为hackCar方法中的参数来打印Test Car类中的两个私有属性?
故事课:
航站楼类{
}
谢谢!
然后在
因此,现在您可以通过公共获取程序访问字段
对保护字段
您的方法
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
2年前关闭。
我需要通过在Terminal类中创建一个公共hackCar方法来从TestCar类中打印属性。 hackCar方法需要将TestCar作为参数并打印TestCar的属性。需要注意的是,我不能碰到TestCar类中的任何东西。
我仍在努力在TestCar中打印两个私有属性。如何通过使用Test Car对象作为hackCar方法中的参数来打印Test Car类中的两个私有属性?
故事课:
class Story {
public static void main(String args[]) {
TestCar testCar = new TestCar();
Terminal terminal = new Terminal();
terminal.hackCar(testCar);
}
}
航站楼类{
public void hackCar(TestCar other) {
System.out.println(other.doorUnlockCode);
System.out.println(other.hasAirCondition);
System.out.println(other.brand);
System.out.println(other.licensePlate);
}
}
class TestCar {
private int doorUnlockCode = 602413;
protected boolean hasAirCondition = false;
String brand = "TurboCarCompany";
public String licensePlate = "PHP-600";
}
谢谢!
最佳答案
私有字段称为“私有”,因为无法获取它们。但是,您可以为他们做公众宣传:
class TestCar {
// Your 4 fields here...
public int getDoorUnlockCode() {
return this.doorUnlockCode;
}
}
然后在
hackCar
方法中更改System.out.println(other.doorUnlockCode);
为此:System.out.println(other.getDoorUnlockCode());
因此,现在您可以通过公共获取程序访问字段
doorUnlockCode
。对保护字段
hasAirCondition
进行相同操作您的方法
Terminal.getdoorUnlockCode()
和Terminal.getAirCondition()
无法到达另一个对象的字段,它们必须在TestCar
对象中关于java - 访问控制练习-Java,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51305186/
10-09 01:55