本帖最后由 寇弘禄 于 2013-3-12 09:42 编辑
- *package test;
- public class ThisTest extends SuperTest{
- public String name = "山东";
- ThisTest(){
-
- }
- ThisTest(String name){
- super(name);
- System.out.println("aaaaa.......");
- }
-
- public void setName(String name){
- this.name = name;
- }
- public static void main(String[] args){
- ThisTest tt = new ThisTest("北京");
- ThisTest tt2 = new ThisTest("天津");
- //tt.setName("广州");
- System.out.println(tt.name+"......"+tt2.name); //这里的输出结果是 --山东......山东
- //为什么不是北京......天津
- }
- }
- class SuperTest{
- public String name = "云南";
- SuperTest(){
-
- }
- SuperTest(String name){
- this.name = name;
- System.out.println("bbbbbb...................");
- }
- }
复制代码- package test;
- public class Test{
- public String name = "山东";
- Test(){
- System.out.println("aaaaa.......");
- }
- Test(String name){
- this.name = name;
- }
- public void setName(String name){
- this.name = name;
- }
-
- public static void main(String[] args){
- Test tt = new Test("北京");
- Test tt2 = new Test("天津");
- //tt.setName("上海");
- System.out.println(tt.name+"......"+tt2.name); //为什么没有父类的情况下就能输出--北京......天津
- }
- }
复制代码 为什么上面那个有父类的,其对象的数据结果是父类中的默认值,而下面那个却能输出通过构造函数赋的值。 |