Java基础之类的基础
Posted 飞行金鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础之类的基础相关的知识,希望对你有一定的参考价值。
类定义---方法及其处理的数据对象的集合结构
将现实的对象(物体)和概念映射到程序中的对象(变量)中
1:使用new运算符创建的类类型的主体称为实例,创建实例的操作称为实例化,
new Account()实例化了一个Account实例;
2:对象就是对程序运行时动态创建的主体的总称
3:类实例中的字段,即实例变量,会初始化为默认值
4:类结构
原则上所有的字段都应该设为私有,未指定private的字段默认访问都是对包内部公开的
将字段设为私有,防止外部访问,使方法和字段紧密结合称之为封装
5:构造函数的作用就是正确的初始化实例,防止初始化不完整或者不正确
声明类类型的时候一定要提供构造函数,如果类中未定义,会默认定义一个空的构造函数
构造函数不是方法,不能通过实例.构造函数()访问
6:方法和消息
实例方法的调用可表示为向对象“发消息”
7:标识符命名
类:大驼峰(首字母大写);接口:大驼峰(首字母大写),表示动作的接口名称时形容词。表示(“可……的”)接口以”……able“结尾,例如Cloneable,Runnable;
方法:小驼峰(首字母小写);字段:小驼峰(首字母小写);常量:全部大写,多个单词之间用_分隔;局部变量或形参:小驼峰(首字母小写)
8:方法访问器
用于获取字段值的方法称为getter方法,用于设置字段值的方法称为setter方法,两者统称为访问器(accessor)
建议将字段abc的setter名设为setAbc,getter名设为getAbc,符合命名规范。另,如果abc是boolean型,一般是用isAbc作为方法名
9:如果在字段声明赋初始值,字段在创建实例就会被初始化值;
10:在构造函数内部可以使用this(……)来调用当前类中的其它重载的构造函数;必须在构造函数的开头运行;
11:请不要返回引用类型的字段值,因为外部能通过该引用值间接改写值;
12:类变量 -声明中加上static的字段就是类变量(静态字段)。类名.类变量或者实例变量.类变量;
13:如果常量需要提供给类使用者,请以public且final的类变量形式进行提供;
14:类方法(静态方法)-方法加上static的方法,调用类名.方法名();类方法中仅允许访问类变量、类方法;(类方法中可以使用实例的方法);
15:类初始化器-在类被初始化也被称为静态程序块或static程序块,只执行一次;类初始化器中不允许return\\this\\super
下图两种初始化类变量
16:实例初始化器-用于初始化实例,在构造方法之前执行,每次实例化都会执行一次
17:包--将类集中起来进行封装;下图中p.Type称之为完全限定名,Type称为简名
包的作用:1:避免命名冲突;2:根据特征分类;3:封装(访问控制)
包的命名规则:小驼峰(首字母小写)
18:类型的导入
1:单一导入import 完全限定名;2:按需导入import 包名.*
在按需导入不可以导入不同层次的包中的类型名称,例如包结构a.b.c.……;import a.*仅导入a包中的类型,b及字包中的不会导入,如需导入b中的类型:import a.b.*
19:静态导入:类变量,类方法(静态导入一般不建议)
1:import static 类型名称.标识符名称;2:import static 类型名称.*
19:源文件和类文件可以在不同目录中
20:类和成员的访问属性
从包的角度来看,类的访问属性1:public类(使用与包无关);2:非public类(默认)(仅在所属包内使用);
21:成员访问控制
类变量、实例变量、方法都是类成员;
公开(public)-包的内外部都可以使用;
限制公开(protected)-包内部和包外部的子类;
默认(defautl)-包内部
私有(private)-类内部
番外:
1:初学者在包使用中的一个问题“使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析”
注意原因时在执行的时候会严格以当前用户路径为基础,按照package指定的包路径转化为文件路径去搜索class文件。
参考这篇(https://www.cnblogs.com/guohu/p/11101285.html)作者写的很详细
2:判断两个对象是否相等,主要基于equals方法和hashcode方法
参考这篇(https://blog.csdn.net/u013063153/article/details/78808923)
以上是关于Java基础之类的基础的主要内容,如果未能解决你的问题,请参考以下文章