1.构造方法不能被继承。也就是说子类里没有父类的构造方法。
 
Java重载根据的是实参和方法形参之间的匹配。自动类型转换也在重载版本的判断中起到了作用。重载的价值在于允许使用通用名称访问相关的方法。
参数传递:分为两种:值调用(call-by-value)、引用调用(call-byt-reference)
Java使用值调用传递所有实参。但根据所传递的是基本类型还是引用类型,精确效果是不同的。
1.当为方法传递基本类型时,使用值调用,因此会得到实参的副本。
2.当为方法传递对象时,情况就不同了,因为对象是通过引用调用传递的。当创建类变量时,只是创建指向对象的引用。因此,形参所引用的对象和实参所引用的对象是同一个。在方法内修改对象会影响到作为实参的对象。
当将对象引用传递给方法时,引用本身还是值调用。但是,由于传递的值引用一个对象,因此值的副本仍然引用相应实参指向的同一个对象。
 
static:独立于类的所有对象进行使用的成员。
被声明为静态的实例变量,在本质上是全局变量。当声明类的对象时,不会生成静态变量的副本。类的所有实例共享相同的静态变量。
静态方法有几个限制:
  1. 只能直接调用其他静态方法
  2. 只能直接访问静态数据
  3. 不能以任何方式引用this或super关键字
 main()方法被声明为静态的,因为需要在创建所有对象之前调用该方法。
 
final:final变量必须在声明时进行初始化,有两种方式:
  1. 在声明时提供值
  2. 在构造函数中提供值
final变量全部使用大写。
方法参数和局部变量也可以使用final:
  1. 参数:防止在方法中修改参数
  2. 局部变量:防止多次为其赋值
方法也可以使用final
 
嵌套类和内部类:嵌套类的作用域被限制在包含它的类中。不能独立于包含它的类存在。
嵌套类可以访问包含类的成员,包括私有成员,包含类不能访问嵌套类的成员。
嵌套类直接在包含类中作为成员声明,也可以在代码块中声明嵌套类。
嵌套类分类:
  1. 静态的嵌套类:只能通过对象访问包含类的非静态类成员。
  2. 非静态的嵌套类:如内部类。可以直接饮用外部类的所有变量和方法。
嵌套类起始于Java 1.1
内部类为什么很重要:因为内部类是在包含它的类的作用域内定义的,所以可以访问外面的类的所有变量和方法。与另外写一个类比较,不用保存调用对象的引用。
 
 可变长参数:
  1. 可变长参数在作为数组给予的。
  2. 可变长参数必须是方法最后声明的参数。
  3. 如果使用可变长参数,并且有重载版本,要严格注意其模糊性。

最新文章

  1. 【转】Caffe初试(五)视觉层及参数
  2. C# 关键字【转】
  3. setAlpha与View Layer关系
  4. RocketMQ与Kafka对比(18项差异)
  5. Java 经典实例: Unicode字符和String之间的转换
  6. PHP从数据库导出EXCEL文件
  7. SVD奇异值分解
  8. gulp入坑系列(2)——初试JS代码合并与压缩
  9. DELL R720系统内存指南
  10. Reorder List [LeetCode]
  11. HDU1796+容斥原理
  12. Code Generation and T4 Text Templates
  13. Oracle EBS-SQL (SYS-19):sys-用户登陆纪录查询.sql
  14. 怎么 得到 DBGrid选中行的数据
  15. JavaScript 中实现继承的方式(列举3种在前一章,我们曾经讲解过创建类的最好方式是用构造函数定义属性,用原型定义方法。)
  16. mybatis面向接口的编程
  17. mysql执行sql脚本文件
  18. gulp项目和webpack项目在浏览器中查看的方式
  19. 在android 上 使用 rxjava 入门篇
  20. 使用nc命令传输文件和文件夹

热门文章

  1. Django笔记&教程 3-2 模板语法介绍
  2. 菜鸡的Java笔记 笔记
  3. 菜鸡的Java笔记 第二十五 wrapperClass 包装类
  4. Mplus数据分析:随机截距交叉之后的做法和如何加协变量,写给粉丝
  5. 痞子衡嵌入式:再测i.MXRT1060,1170上的普通GPIO与高速GPIO极限翻转频率
  6. 「3dmax」快速配置3DMax
  7. Web优化躬行记(5)——网站优化
  8. [loj6118]鬼牌
  9. [bzoj1280]卖猪
  10. [loj3367]装饼干