A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 夜默   /  2013-7-15 19:22  /  19661 人查看  /  241 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

第五题,final 修饰 类,该类不能被继承, final 修饰方法,该方法不能被 override ,final 修饰基本类型变量,该变量是常量,只能被初始化一次,final 修饰引用类型变量,该变量只能指向对象,不能改为指向别的对象。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
final修饰的类:不可被子类继承
final修饰的方法:不可被子类复写
final修饰的基本数据类型变量:一经初始化,不可修改->常量
final修饰的引用变量:引用变量存放的对象地址值不变->恒指向同一个对象
         

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:30
5,final修饰的类、方法、变量的特点?提示:变量分为基本数据类型的变量和引用型变量。 ...

final修饰的类:不能被继承
final修饰的方法:不能被重写
final修饰的变量:普通类型变量是可以使它变成常量,不能被改变。引用类型变量是使它不能被重新指向其它对象,但是原来指向的那个对象内部是可以变化的。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
5,final修饰的类、方法、变量的特点?提示:变量分为基本数据类型的变量和引用型变量。
     1、final修饰的类不可以继承
     2、final修饰的方法不可以覆盖
     3、final修饰的变量是一个常量,只能赋值一次,且只固定显示化赋值
     4、注意:类变量只有在final的修饰下,值才会固定,否则可以修改,static只能说明该值被共享,但不规定是固定的。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:30
5,final修饰的类、方法、变量的特点?提示:变量分为基本数据类型的变量和引用型变量。 ...

不能再被更改。必须初始化。方法和类都是实例。 基本数据类型的变量被final修饰后就是常量,而引用类型的,修饰后不能更改引用的指向了。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 回答的不太完整哦,鼓励一下

查看全部评分

回复 使用道具 举报
被final修饰的类称为最终类,不能被继承。 被final修饰的方法不能重写。 被final修饰的基本数据类型的变量不能再赋值,被修饰的引用变量的引用不能改变

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 25分了!

查看全部评分

回复 使用道具 举报
6,重载和重写的区别?
回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:30
5,final修饰的类、方法、变量的特点?提示:变量分为基本数据类型的变量和引用型变量。 ...

final 类,无法被继承final方法,无法被覆盖,final变量,无法被修改
回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:35
6,重载和重写的区别?

重载是方法名一样,参数类型或者参数个数不一样,重载的方法都可以调用。重写是方法名一样,参数也一样,重写是对父类中的方法的覆盖

评分

参与人数 1技术分 +2 收起 理由
赵海洋 + 2 好快的手!

查看全部评分

回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:35
6,重载和重写的区别?


6,重载和重写的区别?
重载:是相同的方法名,不同的参数列表。
重写:是子类继承父类后,在子类中定义父类中已有的方法。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
重载:只要方法名相同,参数不同,就是重载
重写:返回类型,方法名,参数都要相同。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:35
6,重载和重写的区别?

重载用于同一类中的方法之间,重写是用于父类与子类之间;重载的方法名相同、参数不同,重写是方法名、参数都相同!

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
重载是改变方法里的参数列表,重写是子类方法的覆盖

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
第六题:重载 overload 指的是在同一个类中,两个函数有相同的函数名,参数列表不同,重写 override 指的时候在父子类中,两个函数 返回值 函数名 参数列表 完全一样,并且子类函数的访问类型不能比父类函数严格。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:35
6,重载和重写的区别?

重写是子类的方法覆盖父类的方法,要求方法名和参数都相同,重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
重载涉及同一个类中的同名方法,要求方法名相同,参数列表不同,与返回值类型无关。
重写涉及的是子类和父类之间的同名方法,要求方法名相同,参数列表相同,返回值类型相同(或者是其子类)

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
重载要求:函数形参个数,类型,类型顺序 不同,即构成重载 与返回值无关
复写要求:两个函数完全相同:形参个数,类型,顺序,返回值类型

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
赵海洋 发表于 2013-7-15 20:35
6,重载和重写的区别?

重写是方法名相同,参数必须都是一样的才行,重写针对父类中有了的方法。重载只有方法名是相同的,参数类型、个数等不同。

评分

参与人数 1技术分 +1 收起 理由
赵海洋 + 1 赞一个!

查看全部评分

回复 使用道具 举报
7,示例代码:单例设计模式,两种方法一种即可,并说说这两种方法的区别?
回复 使用道具 举报
重载与重写的区别
1、简单说,就是同样的一个方法能够根据输入数据的不同,做出不同的处理,即方法的重载——有不同的参数列表(静态多态性)
2、而当子类继承自父类的相同方法,输入数据一样,但要做出有别于父类的响应时,你就要覆盖父类方法,即在子类中重写该方法——相同参数,不同实现(动态多态性)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马