Java继承

Java继承

 1 public class Base{
 2     private String baseName = "base";
 3     
 4     public Base()
 5     {
 6         callName();
 7     }
 8  
 9     public void callName(){
10         System. out. println(baseName);
11     }
12  
13     static class Sub extends Base{
14         private String baseName = "sub";
15         public void callName()
16         {
17             System. out. println (baseName) ;
18         }
19     }
20     
21     public static void main(String[] args){
22         Base b = new Sub();
23     }
24 }
25 //输出为Null.子类实例化后,先执行父类中的方法,callName()调用了baseName,然而此时子类中的baseName还未赋值,输出为Null.
26 
27 
28 
29 public class C {
30      private String b = "c1";
31 
32      public C(){
33           System.out.println("c");
34           call();
35      }
36 
37      void call(){
38           System.out.println(b);
39      }
40 
41      static class D extends C{
42           private String b = "d1";
43 
44           public D(){
45                System.out.println("d");
46                call();
47           }
48 
49           void call(){
50                System.out.println(b);
51           }
52      }
53 
54      public static void main(String[] args){
55           C c = new D();
56      } 
57 }

 

print:

c

null

d

d1

 

子类不会继承父类的private属性和方法。

 

转载于:https://www.cnblogs.com/FANKIKI/p/7497499.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值