Java核心技术_笔记5-2

1.protected声明的域或方法允许子类访问父类

2.
(1)private仅本类可见
(2)public所有类可见
(3)protected本包和所有子类可见
(4)默认 本包可见

3.Object是所有类的超类
可以用object引用任何类型的变量
Object a=new Parent();
但只能作为各值的通用持有者
Parent b=(Parent) a;

4.除基本类型外都是对象
a=b;
a=new int[10];

5.如果p,q都为null
Objects.equals(p,q)为true
若其中一个为null,返回false
p,q都不为null,用p.equals(q)

6.对象.getClass()返回类名

7.比较相等
如果子类有自己的相等概念,用getClass检测
由超类决定相等的概念,用instanceof检测

8.编写equals方法建议
(1)显式参数命名oo(otherObject)
(2)检测this与oo是否引用同一对象
if(this=oo) return true;
(3)检测oo是否为null
if(oo==null) return false;
(4)this与oo是否属于同类
如果每个子类有所改变if(getClass()!=oo.getClass()) return false;
子类拥有统一语义if(!(oo instaceof ClassName)) return false;
(5)将 oo转换类型
ClassName o=(ClassName) oo;
(6)对需要对比的域进行比较
比较基本域用==
比较对象用equals

9.用@Override对覆盖超类的方法进行标记
© Override public boolean equals (Object other)

10.hashCode散列码由对象导出的一个无规律整型值
定义在Object类中
a.hashCode()

11.
a.toString()返回表示对象值的字符串
显示 类的名字+一段值域

a.getClass()返回
class 类名
a.getClass().getName()返回
类名
System.out.println(x);
println 方法就会直接地调用x.toString()

12.
int[] a={1,2,3};
System.out.println(a);//显示[I@4554617c
System.out.println(Arrays.toString(a));//正确显示

13.
ArrayList是类型参数的泛型类
ArrayList< Fuck> a=new ArrayList<>();

ArrayList< Fuck> a=new ArrayList<>();
<>中是类名,int不可以,要用Integer

14.增加数组中元素个数a.add(new Fuck b)

15.设置初始容量
ArrayList< Fuck> a=new ArrayList<>(100);

a.ensureCapacity(100);
这是最小容量,还可以通过add增加

16.数组列表固定大小a[100],长度a.length
ArrayList列表大小不固定,长度a.size()

17.a.get(0)得到列表第一个(索引)数
a.set(0,123)将第一个数设置为123
set只能替换原有数组的数,不能增加

18.
ArrayList< Fuck> a向 Fuck[] b转化
用a.toArray(b)

19.
增加元素a.add(2,”second”)
删除元素a.remove(2)
增加删除后会重新分配空间

20.基本类型的类
Byte Short Integer Long
Float Double
Character
Void
Boolean
称为包装器(wrapper),不能改包在其中的值,
是final也不能继承子类

21.定义整型数组列表
ArrayList< Integer> list =new ArrayList<>();
效率低于int[]

22.
list.add(3) ;
将自动地变换成
list.add(Integer.valueOf(3))
自动装箱(autoboxing ) ,编译器认可的

23.
字符串转换成整型
int x=Integer.parseInt(s)

24.定义方法时接收任意数量的对象
public void fuck(int a,Object… b)
Object…等价于Object[]
用b[0],b[1]匹配
必须位于最后

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值