• java编程思想札记一


    1. 访问权限中尤其注意protected,它包含了包访问权限,只要是同一个包里的,就能访问到protected成员。
     
    2. 后期绑定:被调用代码直到执行时才能确定,编译阶段只保证调用方法存在和类型(参数和返回值)检查无误。这一特性是为了多态准备的。java中是默认行为。c++中需要virtual关键词才可以。
     
    3. java中不采用多继承,所有都继承自Object类,也是考虑到垃圾回收器实现能更简单,处理异常也能更简单。(这里不是很懂,重点是单继承)
     
    4. java中加入泛型之后,对于容器的存储对象就可以在编译阶段进行类型检查,避免了向下转型可能的运行时异常。
     
    5. 基本类型中char比较特殊,它占两个字节,无符号,取值范围是0~2^16-1。
     
    6. java会对类的成员变量初始化一个默认值,如果它是基础类型的话。但是方法中的局部变量则不会,必须程序来指定。
     
    7. 方法重载判断的是参数的个数,类型和顺序。
     
    8. static关键字:对于成员变量而言,static能保证只有单一存储空间;而对于成员方法而言,static能保证即使没有对象也能调用方法。相同点是都不与任何实例对象相关联,只与类相关联。
     
    9. PrintStream打印输出流,继承自FilterOutputStream,用来装饰其它流,提供数据值表示形式。它不会抛出IOException,内部错误标记了,用checkError可以查看。有自动flush功能。
     
    10. javadoc只能为public和protected成员进行文档注释,除非用-private标记
     
    11. 逻辑运算符&&和||都有短路现象。
     
    12. 对于整数默认是int,而对于小数默认是double,如果要用float,需要单独标识F,long同样得用L。
     
    13. java中的2e3这种科学技术法标识中的e也是代表10的幂次。
     
    14. 按位异或标识是^。按位与&、按位或|都没有短路现象。按位非标识是~。
     
    15. 左移操作符<<低位补0,右移操作符>>高位补符号位。无符号右移>>>高位补0。
     
    16. 常用数字的二进制标识
     
    -2147483648
    100000000000000000000000
    -1
    11111111111111111111111111111111
    0
    000000000000000000000000
    2147483647
    01111111111111111111111111111111
     
    17. 计算机采用(Two's Complement)二的补码表示负数,意思是分两步完成数值转换,第一步是所有位取反,第二步是对数值加1。之所以采用这种方式,是能保证正负数相加可以采用同一种电路来运行。
     
     
     
     

  • 相关阅读:
    How to build Skia canvaskit
    c++ 多线程 并发 id generator 产生器
    c++ 多态 读书笔记
    c++ 各种奇门鬼爪的构造函数 和 类的初始化
    图说C++对象模型:对象内存布局详解 强烈推荐
    C++对象模型之RTTI的实现原理
    C++ cast static_cast、dynamic_cast、const_cast和reinterpret_cast(四种类型转换运算符) 强烈推荐
    Markdown 语法
    vc 编译选项 忽略crash
    chromium 编译报错 You must installWindows 10 SDK version 10.0.19041.0 including the "Debugging Tools for Windows" feature.
  • 原文地址:https://www.cnblogs.com/bityinjd/p/8426478.html
Copyright © 2020-2023  润新知