Java编程思想学习录(连载之:一切都是对象)

Java编程思想学习录连载文章

Macbook Air

注:本文首发于 My 公众号 CodeSheep ,可 长按扫描 下面的 小心心 来订阅 ↓ ↓ ↓

CodeSheep · 程序羊


还是有必要学习一下关于·一切都是对象

说Java是一种纯粹的面向对象的语言,可能这话主要是针对和C++的比较而言,毕竟C++提供了向C的后向兼容的能力,致使C++好像面向对象得不那么纯粹,这话我大概同意吧。

Java均是在用reference来操作对象

比较安全的做法是:创建引用的同时对其进行初始化

对象由我们来创建但却不需要我们来销毁

  • 对于基本类型

    • 无需用new,java视其为非引用的自动变量,并置于stack之中
    • 基本类型有其包装器类,这才允许将其创建于heap之中,当然包装完之后也不能叫基本类型对象了
    • java所有数值都有正负,不支持无符号
    • BigInteger和BigDecimal是Java支持的两大高精类型
  • 对于数组

    • java在每个数组上用了一点内存开销以及运行时的下标检查为代价,带来了收益是:java确保数组会被初始化(对象数组元素初始化为null,基本类型数组元素初始化为0),且不会越界访问
  • 对于class

    • 基本数据类型成员会确保有默认值(但该条款不适用与局部变量)
    • 称呼上惯用方法来取代函数;方法名和参数列表成为方法签名;调用方法的行为称为发消息给对象
  • 关于作用域

    • java不允许覆盖一个较大作用域的变量,如下:
      1
      2
      3
      4
      5
      6
      {
      int x = 12;
      {
      int x = 96; // 这在Java里是不合法的
      }
      }
  • 关于Static对象

    • 一份存储空间
    • 直接使用类名来引用static成员更常见
  • 关于一个java程序
    • java.lang肯定会被自动导入到每一个java文件中
    • 一个java源码文件 = 一个编译单元
    • java源文件名 = 源文件中仅有的一个public类名,且该类必须包含一个main()方法(当然一个java文件中无public类也是ok的!)
    • 每个java类都有一个main()方法是OK的,这样还便于单元测试!

长按扫描 下面的 小心心 来订阅 CodeSheep,获取更多 务实、能看懂、可复现的 原创文 ↓↓↓

CodeSheep · 程序羊



最后附上个人联系方式,欢迎大家交流学习:
个人博客:www.codesheep.cn
个人网站:http://113.209.119.170/ (捂脸的表情,很慢,1G1C1M,你懂的)
简 书:https://www.jianshu.com/u/d19536b0189b



支付宝打赏 微信打赏

如果文章对您有帮助,您可以鼓励一下作者

评论