`
wangxiao5530
  • 浏览: 134267 次
  • 性别: Icon_minigender_2
  • 来自: 大连
社区版块
存档分类
最新评论

JAVA中关键字区别

    博客分类:
  • Java
 
阅读更多
1. virtual abstract
       (1) virtual是虚方法,方法里可以有实现,也可以没有实现。abstract是抽象方法。没有方法体,没有实现。其实这要分具体情况判断。如果写一个方法,方法体没有啥实现的话,那么就选用抽象方法。举个例子:交通工具:都有跑的方法,那么定义一个交通工具跑的方法,那么此方法是虚方法还是抽象方法呢? 我们来分析一下,很明显:交通工具----有汽车、轿车、卡车。等等。。。都有跑的方法,汽车是频率较快的跑,卡车是频率慢慢的跑,轿车是频率很快的跑。很明显。都有各自跑的方法,所以,我们干脆 交通工具里面的 跑的方法 什么都不做。因为没有啥实际意义。所以定义为抽象方法。 
      (2) 子类必须实现abstract方法,而可以选择性实现virtual方法

2.override new
      (1) 说通俗点吧:new是实例化一个新的,override是重新写方法,反正就是New是拿写好的东西来用,override是看写好的东西不爽,拿过来改一下再用。

override是重载所继承的类型方法的 而被继承的类方法必须加virtual 才可以被重载
new 运算符 

1.用于创建对象和调用构造函数 

例:Class_Test MyClass = new Class_Test(); 
      (2) 如果父类存在同名方法,同名方法是abstract的话,那么就是override,如果没有修饰符则使用new重写。

2.也用于为值类型调用默认的构造函数 

例:int myInt = new int(); 

myInt 初始化为 0,它是 int 类型的默认值。该语句的效果等同于:int myInt = 0; 

3.不能重载 new 运算符。 

4.如果 new 运算符分配内存失败,则它将引发 OutOfMemoryException 异常。 

new 修饰符 

使用 new 修饰符显式隐藏从基类继承的成员。若要隐藏继承的成员,请使用相同名称在派生类中声明该成员,并用 new 修饰符修饰它。 
<!--End_rbody_77769150//-->
 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics