JAVA基础心得

Java语言设计思想:更加简洁、一致性,所以摒弃了违反这两条的语法,添加符合这两条的语法
除了比C++多大量实库(API)外,还有不少工具,;
java程序运行在虚拟机上,可以方便的跨平台运行

以下参考书java核心技术 第十版

语法:

8个基本类型,不用担心编译器不同导致位数不同,定死了。8位是byte。
三个特殊的浮点数值:正无穷大、负无穷大、NaN (不是一个数字)(很少用到)
支持强制类型转换,3元表达式。
(>>>)不带符号右移(高位补0,没有<<<); >>带符号右移(高位不补0,<<低位补0)
每个类都可以有一个main方法,可单独编译调试(高内聚)
枚举类:(书5.6章)
…形参定义为为省略号表示传的是一个数组,调用函数时可以传入多个参数
接口:如Arrays.sort可以将对象进行排序,但要求对象的类实现Comparable接口。

与C++不同处

没有指针,不能直接取地址;没有引用。
char类型表示编码类型,普通变量不要用char类型
final表示常量(类似const)
除了String类已经重装载‘+’、‘-’符号,其他类不能重装载运算符
声明对象or数组是是在堆上开创内存空间,所以务必要加上new,否则声明的将会是一个引用。
数组成员是数组的话,可以在代码中初始化(内存应该是不连续的),而C++需要在声明时写死数量(多维数组)
break可以带标签(类似goto)
允许数组长度为0,这样的数组不是null
方法是否内联交给编译器去优化
可以在显式域初始化,还可以调用方法,如:private int aa = fn(); 显式域后面可以加代码块,还可以给代码块加static关键字(第一次创建类才运行),代码块:{ code; }
造函数可以调用另一个构造函数
类可以定义finalize 方法(作用类似析构函数),由于该方法什么时候执行不像析构函数这么明确,因此不要依赖于使用 finalize 方法回收任何短缺的资源。
包和导入与名空间很像。
关键字extends表继承;super来引用父类的成分。
abstract定义类为抽象类
protected保护部分同一个包中的其他文件可见

方法

hashCode方法返回对象的散列码,散列码没有规律,不同对象散列码不一样

未完待续。。。反射接口集合等JAVA重要语法,使用时再记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值