栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础知识 day1

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础知识 day1

面向对象程序设计:

* 方法:
* 方法的访问修饰符可以不写
* 方法返回值可以没有void
* 传参都是值传递
* 一个Java文件可以定义n个class,但是只能有一个public class
* public class类名跟文件名一致
* 变量:
* 局部变量:定义在方法中的变量,作用域:从定义位置开始到方法结束,局部变量只能在当前方法使用
* 成员变量:定义在方法外,类内的变量
*重载:在一个类中可以包含多个重名方法,但是参数列表不能相同;参数个数、类型、顺序。
*代码块:用{}括起来的一段代码
* 普通代码块:定义在方法中
* 构造代码块:定义在类中,每次代码运行的时候会将构造代码块中的代码添加到构造方法前面,构造代码块会添加到每一个构造方法中,当使用this()的时候不会添加
* 静态代码块:使用static()括起来的代码,是在程序载入的时候优先执行
*       数据库连接等其他提前准备好的代码放在其中
* 同步代码块:在多线程的时候使用,用来给共享空间加锁操作

*Package:对应到文件系统就是多级目录
* 解决文件同名问题、为了方便管理,将具体处理功能的代码放到同一个目录下
* 使用:package 域名的倒写
* 完全限定名:包名+类名
* JDK中常用的包
* lang
* util:工具包
* net:网络包
* io:输入输出包
* 静态导包:import static java.Math.*

* 封装:如果任何一个处理类都可以对对象惊醒赋值操作,那么当赋值不准确的时候,会产生额外的结果
* 如何在赋值的同时加逻辑判断:使用封装可以保证数据规范,不符合规范的数据无法进行操作
* 好处:隐藏类的内部实现细节、只能通过提供的方法进行访问,其他无法访问、可以根据需求添加复杂的逻辑判断语句、方便修改实现
* 面向对象的封装(狭义):将类中的属性设置为私有属性,提供共有的外部方法供程序进行调用,可以实现丰富的细节操作
*广义的封装:可以将完成特定功能的代码块封装成一个方法,供不同的程序进行调用
* 高内聚,低耦合
* 定义类的时候要包含以下组件
* 私有属性
* 构造方法(无参构造方法和自定义构造方法)
* set/get方法
* 普通方法
* 在java中明确定义了访问权限;从大到小
* public:公共的,可以被项目中所有类访问;
* protected:受保护的,可以被当前类访问,可以被当前包访问,也可以被子类访问;
* default:默认权限,可以被当前类访问,可以被当前包访问;
* private:私有权限;只能被当前类访问
* 四种访问呢修饰符可以修饰属性和方法
* 类的访问修饰符只有两个:public default

* 继承:表示父类和子类之间的关系
* 当两个类或者多个类具备相同的属性和方法时,可以提取出来,变成父类,子类可以继承
* 子类跟父类是is-a的关系
* 使用继承关系需要使用extend关键字
* 使用继承关系后,父类的属性和方法都可以再子类中进行使用(非私有属性和方法)
* Java是单继承关系

* super:是直接父类对象的引用
* 可以在子类中调用父类中被子类覆盖的方法 super.父类方法
* 当super在普通方法中使用,可以放在任意位置,在构造方法中使用只能放在第一行
* super关键字不能和this关键字出现在同一个构造方法中
* 父类中私有的属性方法都不能被调用
* 子类的构造方法都会默认使用super调用父类的无参构造方法,因此在定义类的时候,无论是否定义了其他构造方法,最好将无参构造方法写上
* 如果构造方法中显示了指定的super的构造方法,那么无参构造方法就不会被调用
* 总结:在创建子类对象的时候一定会优先创建父类对象
* 所有Java类都具有同一个父类,称之为object。是所有类的根类
*
* 重写:必须存在继承关系,当父类中的方法无法满足子类的需求时可以选择使用重写,将父类的状态和行为改编为自身的状态和行为
* 注意:表示子类覆盖父类的方法,当覆盖后,调用同样的方法时会优先调用子类
* 重写的方法名称、返回值类型,参数列表必须跟父类一样
* 子类重写的方法不允许比父类方法具备更小的访问权限
* 父类的静态方法父类可以调用但不能被重写

* Java中的对象是对现实的具象化,但在现实世界中,某些类并不具备实例化的意义,因此可以定义为抽象类
* 抽象类:创建抽象类 abstract
* 不能进行实例化,也就是不能new对象
* 抽象类中的某些方法需要子类更丰富的实现,父类实现没有意义,因此可以将抽象类中的方法定义为抽象方法,没有具体的实现,只包含方法名称,返回值,
* 参数列表,访问修饰符
* 使用abstract关键字修饰的方法叫做抽象方法,可以不写方法的实现
* 子类在继承抽象父类的时候,必须要将父类中的抽象方法进行实现或者将子类也定义为抽象方法
* 有抽象方法的一定是抽象类,但是抽象类中不一定包含抽象方法
*
* final:可以修饰变量,表示变量值不可改变
* final可以修饰方法:表示方法不可以被重写
* final可以修饰类表示类不可以被继承

* 多态:对应同一个指令(调用同一个名称的方法),不同的对象给予不同的反应(不同的方法实现)
* 规范(多态实现前提):1、必须要有继承关系 2、子类的方法必须重写父类的方法 3、父类引用指向子类对象
* 多态的目的:提高代码的扩展性和维护性 方便代码逻辑的编写
* 多态的两种表现形式:父类作为方法的参数;父类作为方法的返回值
* 引用类型的转换和基本数据类型的转换类似:当父类转换为子类的时候要进行强制转换,但是在强制转换之前一定要先判断父类引用指向的子类对象是谁,如果
* 无法确定在运行是可能会出错
* 当子类向父类转换时,直接自动转换
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/881286.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号