码迷,mamicode.com
首页 > 编程语言 > 详细

java里的一些特别值得注意的地方

时间:2014-07-16 12:56:04      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:java   对象   局部变量   转型      

return 语句的作用:1.返回值 2.结束某个方法的运行;

局部变量必须要初始化,成员变量系统会默认初始值;

栈:自动分配连续的空间,后进先出,放置局部变量

堆:不连续,放置new出来的变量

       堆里面还有方法区,类的是、代码bubuko.com,布布扣信息,static变量,常量池(字符串常量等)



















 public class Animal {
      String name="Animal";
      int age=2;
      public void eat(){
          System.out.println("Animal eat");
      }
}


public class Bird extends Animal{
    String name="Bird";
     int age=20;
    public void eat(){
        System.out.println("Bird eat...");
    }
    public void sleep(){
        System.out.println("Bird sleep....");
    }
}


向上转型
        Animal a=new Bird();    
        a.eat();
      //  此处将调用子类的eat()方法。原因:b实际指向的是Bird子类,故调用时会调用子类本身的方法。
      // a.sleep();  
      //需要注意的是向上转型时a会遗失除与父类对象共有的其他方法。如本例中的sleep()方法不再为a所有。
        
向下转型
        Bird b=(Bird)a;
        b.eat();
       //向下转型,编译和运行皆不会出错,这里的向下转型是安全的。因为b1指向的是子类对象
       Animal a1=new Animal();
       Bird b1=(Bird)a1;   //不安全的向下转型,编译无错但会运行会出错
       b1.eat();            //这句话运行会出错







java里的一些特别值得注意的地方,布布扣,bubuko.com

java里的一些特别值得注意的地方

标签:java   对象   局部变量   转型      

原文地址:http://blog.csdn.net/u010056403/article/details/37870325

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!