构造器

  1. 通过new关键字调用

  2. 构造器虽然有返回值,但是不能定义返回值类型(返回值的类型肯定是本类),不能在构造器里使用return返回某个值。

  3. 构造器是有权限的,也就是可以添加public,也可以添加protect 。。。

  4. 使用this关键字调用重载的构造方法,避免相同的初始化代码。但只能在构造方法中用,并且必须位于构造方法的第一句

  5. this不能用于static方法中

  6. 如果我们没有定义构造器,则编译器会自动定义一个无参的构造函数。如果已定义则编译器不会自动添加

  7. 构造器的方法名必须和类名一致

  8. static静态初始化块执行顺序

    1. 上溯到Object类,先执行Object的静态初始化块,再向下执行子类的静态初始化块,直到我们的类的静态初始化块为止

    2. 构造方法执行顺序和上面顺序一样

  9. 子类可以重写(覆盖)继承自父类的方法,即方法名和参数列表与父类的方法相同,但方法的实现不同。当子类对象的重写方法被调用时(无论是通过子类的引用调用还是通过父类的引用调用),运行的是子类的重写后的版本


垃圾回收

  1. 程序员无权调用垃圾回收器

  2. 程序员可以调用System.gc(),该方法只是通知JVM,并不是运行垃圾回收器。尽量少用,会申请启动Full GC,成本高,影响系统性能

  3. finalize方法,是Java提供给程序员用来释放对象或资源的方法,但是尽量少用
  4. 对象空间的释放:将对象赋值null即可。垃圾回收器将负责回收所有”不可达”对象的内存空间
  5. 对象分为三种状态:年轻代、年老代、持久代。JVM将堆内存划分为 Eden、Survivor 和 Tenured/Old 空间
  6. 垃圾回收过程
    1. 新创建的对象,绝大多数都会存储在Eden中,
    2. 当Eden满了(达到一定比例)不能创建新对象,则触发垃圾回收(GC),将无用对象清理掉,然后剩余对象复制到某个Survivor中,如S1,同时清空Eden区

    3. 当Eden区再次满了,会将S1中的不能清空的对象存到另外一个Survivor中,如S2,同时将S1区中的不能清空的对象,也复制到S2中,保证Eden和S1,均被清空

    4. 重复多次(默认15次)Survivor中没有被清理的对象,则会复制到老年代Old(Tenured)区中
    5. 当Old区满了,则会触发一个一次完整地垃圾回收(FullGC),之前新生代的垃圾回收称为(minorGC)

内存管理

  1. 内存泄露

    1. 创建大量无用对象,如使用String拼接字符,而不是使用StringBuffer
    2. 静态集合类的使用
    3. 各种连接对象(IO流对象、数据库连接对象、网络连接对象)未关闭
    4. 监听器的使用

package

  1. 两个要点:

      1. 通常是类的第一句非注释性语句。

      2. 包名:域名倒着写即可,再加上模块名,便于内部管理类

  2. 写项目时都要加包,不要使用默认包

  3. com.AWT和com.AWT.Button,这两个包没有包含关系,是两个完全独立的包,只是逻辑上看起来后者是前者的一部分

  4. Java会默认导入java.lang包下所有的类,因此这些类我们可以直接使用
  5. 静态导入(static import)用于导入指定类的静态属性
    1. import static java.lang.Math.*;//导入Math类的所有静态属性
  6. 如果导入两个同名的类,只能用包名+类名来显示调用相关类
    1. java.util.Date date  = new  java.util.Date();

方法(函数)

  1. void返回类型是有return 的,不过是系统隐式的添加

java 一些容易忽视的小点-类和对象相关推荐

  1. java飞行棋项目_java小项目 类与 对象 骑士飞行棋代码

    /**主体方法 import java.util.Random; import java.util.Scanner; public class Game { public Map map; Scann ...

  2. java写一个外网访问的接口_【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖、抽象和接口概念及区别(中篇)...

    0 前言 初学JAVA时,总会对一些概念一知半解,相互混淆,不明其设计的用意,如类.对象.重载.封装.继承.多态.覆盖.抽象类.接口概念.为便于理解和巩固,本文将基于一个案例及其变形,展现各个概念的定 ...

  3. 反射创建对象_如何应用Java反射技术灵活地创建程序类的对象实例

    软件项目实训及课程设计指导--如何应用Java反射技术灵活地创建程序类的对象实例 1.如何应用属性配置文件实现对系统中的配置信息进行读写操作 Java中的属性配置文件主要可以作为软件应用系统及项目的配 ...

  4. 面试轻松讲清楚 Java 面向对象的问题与知识(类与对象,封装,继承,多态,接口,内部类...)

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

  5. JAVA基础-U7 面向对象编程(基础部分)-类与对象

    类与对象(OOP) 快速入门 类是抽象的,概念的,代表一类事物.即它是数据类型 对象是具体的,实际的,代表一个具体事物.即它是实例 类是对象的模版,对象是类的一个个体,对应一个实例 养猫问题: 张老太 ...

  6. java客户姓名添加和查找_java类与对象 演练 客户姓名添加与查看

    java类与对象 演练 客户姓名添加与查看 java类与对象 演练 客户姓名添加与查看 https://www.ixigua.com/6870483106223096327?logTag=_YUmIb ...

  7. 《Java程序设计》实验指导——项目3 类与对象

    项目3 类与对象 实验目的 实验性质 实验内容 实验目的 掌握Java类的结构.类的定义.方法和属性的定义以及对象的实现:掌握类及其成员修饰符的使用:掌握构造函数的使用:方法的参数传递和返回值的用法: ...

  8. JAVA基础语法:函数(方法)、类和对象

    文章目录 函数 static修饰符 类和对象 了解其他JAVA 常用API和算法点这里 >> https://blog.csdn.net/GD_ONE/article/details/10 ...

  9. java //d+_Java语言程序设计D实验——类与对象实验

    Java语言程序设计D实验--类与对象实验 一.实验内容描述(问题域描述) [实验题目]类与对象 [实验目的]使用类来封装对象的属性和功能:掌握类变量与实例变量,以及类方法与实例方法的区别:掌握使用p ...

最新文章

  1. 应用丨其实,你每天都生活在人工智能中
  2. 清华大学魏少军教授:中国发展芯片瓶颈在哪里?
  3. 关于更新系统后CocoaPods不能使用的问题
  4. 返回顶部小火箭(仿电脑管家)
  5. iOS视图控制器之间delegate传值教程
  6. 搞定使用MySQL导入外部的SQL文件执行
  7. 5.FreeRTOS学习笔记- 互斥量
  8. Python使用Apriori算法查找关系密切的演员组合
  9. 谷歌发布基于浏览器的 Spectre 攻击的 PoC exploit
  10. Bootstrap Paginator 分页插件参数介绍及使用
  11. mysql 查询的关键词的执行顺序
  12. 作为一名投资人,我经常会问创业者 8 个问题
  13. mac 更新系统时间
  14. 【docker】虚拟化和docker容器概念
  15. LeetCode:逆波兰式;
  16. 程序员转行算法工程师-四个月总结
  17. P4学习——p4runtime
  18. 单元格等于计算机日期,《excel表格怎样自动填写日期》 Excel单元格中自动获取当前日期与时间...
  19. Align before Fuse: Vision and Language Representation Learning with Momentum Distillation
  20. ECMAScript(ES6)

热门文章

  1. c#winform演练 ktv项目 实现播放完了一曲自动播放下一曲的功能
  2. 吃货阶段03 需求 实现我要下单的功能 0927
  3. 草稿 前端开发 代码的编写习惯 缩进的意义 HTML的格式
  4. Laravel 发送邮件报错的解决方案:PHP Warning: stream_socket_enable_crypto(): SSL operation failed with code 1.
  5. linux 使用命令直接查看带单位的文件大小
  6. Java CAS 和ABA问题
  7. Eclipse InstaSearch搜索词法 (很多并不支持)
  8. Windows2003屏蔽IP
  9. IAAS云计算产品畅想-云主机产品内涵
  10. 浅谈Node.js(概念、安装、入门例子)