面向对象编程
文章平均质量分 67
白茶清酒
这个作者很懒,什么都没留下…
展开
-
46_注解
注解注解的基本概念注解(Annotation)又叫标注,是从java5开始增加的一种引用数据类型。跟枚举一样是从Java5开始增加的,枚举我们就看做是一种特殊类,注解就看做是一种特殊的接口即可。注解本质上就是代码中的特殊标记,通过这些标记可以在编译、类加载、以及运行时执行指定的处理。就像超市的货架上的标签一样。就是对代码做一些特殊声明,以及代码补充之类的。注解的语法格式访问修饰符 @interface 注解名称 { @interface 就是在告诉我们注解是一种特殊的接口 注解成员;原创 2022-01-06 21:51:16 · 470 阅读 · 0 评论 -
45_枚举
枚举枚举基本的概念枚举从字面上来说就是一一列举的意思一年中的所有季节:春季、夏季、秋季、冬季。所有的性别:男、女。键盘上的所有方向键:向上、向下、向左、向右。在日常生活中这些事物的取值只有明确的几个固定值,此时描述这些事物的所有制都可以一一列举出来,而这个列举出来的类型就叫做枚举类型。只有几个固定,明确数量,不可更改对象 的类就称作枚举类package com.lagou.module02.task05;/** * @author hhc19 * @date原创 2022-01-06 21:48:28 · 123 阅读 · 0 评论 -
44_内部类
内部类内部类的基本概念当一个类的定义出现在另外一个类的类体中时,那么这个类叫做内部类(Inner),而这个内部类所在的类叫做外部类(Outer)。也就是类内部的类。类中的内容:成员变量、成员方法、构造方法、静态成员(变量、方法,隶属于类层级的)、构造块和静态代码块、内部类。实际作用当一个类存在的价值仅仅是为某一个类单独服务时,那么就可以将这个类定义为所服务类中的内部类,这样可以隐藏该类的实现细节(可以对外不可见,也不需要可见)并且可以方便的访问外部类的私有成员而不再需要提供公有的get和se原创 2022-01-06 21:47:19 · 155 阅读 · 0 评论 -
43_聊聊Java8接口中的default方法和static方法
JDK1.8之前的接口回顾在jdk1.8之前,我们对接口的认知是这样的:1、方法:只能包含public和abstract的方法,即使定义为:interface Shape { //获取几何图形的面积 Double getArea(double length, double width);}方法前面也默认加了public abstract修饰2、字段:只能包含常量,即public static final 修饰的变量interface Shape { int length =转载 2022-01-06 21:45:29 · 496 阅读 · 0 评论 -
42_接口
接口接口的概念接口就是一种比抽象类还抽象的类,体现在所有方法都为抽象方法。定义类的关键字是class,而定义接口的关键字是interface。接口比抽象类还抽象主要体现在两点:1、只能有常量;2、里面只能由抽象方法(新特性除外);package com.lagou.module02.task04;/** * @author hhc19 * @date 2021/12/31 22:12 * @description */public interface InterfaceT原创 2022-01-06 21:41:18 · 330 阅读 · 0 评论 -
41_抽象方法和抽象类
抽象方法和抽象类抽象方法的概念抽象方法主要指不能具体实现的方法并且使用abstract关键字修饰,也就是没有方法体。具体格式如下:访问权限 abstract 返回值类型 方法名(形参列表);public abstract void cry();抽象类的概念抽象类主要指不能具体实例化的类并且使用 abstract 关键字修饰,也就是不能创建对象。package com.lagou.module02.task04;/** * @author hhc19 * @date原创 2022-01-06 12:46:43 · 190 阅读 · 0 评论 -
40_多态
多态多态的概念多态主要指同一种事物表现出来的多种形态。饮料:可乐、雪碧、红牛、脉动、…宠物:猫、狗、鸟、小强、鱼、…人:学生、教师、工人、保安、…图形:矩形、圆形、梯形、三角形、…多态的语法格式多态是在继承的 基础之上衍生出来的。多态的前提是要有继承关系。继承是在封装的基础之上衍生出来的。父类类型 引用变量名 = new 子类类型();如: Shape se = new Rect(); sr.show();案例编程实现Shape类的封装,特征有:横纵坐原创 2022-01-05 02:53:35 · 94 阅读 · 0 评论 -
39_final
final 关键字基本概念final本意为"最终的、不可变的",可以修饰类、成员方法以及成员变量。使用方式final 关键字修饰类体现在该类不能被继承。主要用于防止滥用继承,如:java.lang.String类、System类等。final 关键字修饰成员方法体现在该方法不能被重写但可以被继承。主要用于防止不经意间造成重写,如:java.text.Dateformat类中的format方法等。package com.lagou.task08;/** * @aut原创 2022-01-05 02:52:49 · 188 阅读 · 0 评论 -
38_权限修饰符和包的定义
常用的访问控制符注意事项public 修饰的成员可以在任意位置使用。private修饰的成员只能在本类内部使用。通常情况下,成员方法都使用public关键字修饰,成员变量都使用private关键字修饰。package语句的由来IDEA中Setting=>Build,Execution,Deployment=>Compiler=>Build project automatically(自动编译),只要把这个勾选上以后代码写完了就会自动编译(相当于我们之前的javac编译)原创 2022-01-05 02:51:55 · 83 阅读 · 0 评论 -
37_构造块和静态代码块的考点(笔试)
又见构造块与静态代码块(笔试)先执行父类的静态代码块,再执行子类的静态代码块。执行父类的构造块,执行父类的构造方法体,相当于是把子类对象中包含的那个父类对象构造出来。执行子类的构造块,执行子类的构造方法体(完整的把整个子类对象构造出来)。package com.lagou.task08;/** * @author hhc19 * @date 2021/12/29 23:03 * @description */public class SuperTest { {原创 2022-01-05 02:51:02 · 137 阅读 · 0 评论 -
36_IDEA
IDEAJava开发的常用工具文本编辑器(TE,Text Editor)记事本、Notepad++、Edit Plus、UItraEdit、…集成开发环境(IDE,Integrated Development Environment)Jbuilder、NetBeans、Eclipse、MyEclipse、IDEA、…下载和安装方式下载地址:https://www.jetbrains.com/安装方式:exe版 一路点击下一步默认安装即可案例题目:编程实现An原创 2022-01-05 02:50:32 · 111 阅读 · 0 评论 -
35_方法重写
方法重写方法重写的概念从父类中继承下来的方法不满足子类的需求时,就需要在子类中重新写一个和父类一样的方法来覆盖从父类中继承下来的版本,该方式就叫做方法的重写(Override)。 重载叫 Overload// 自定义show方法覆盖从父类中继承的版本@Override // 标注/注解,用于说明下面的方法是对父类方法的重写,若没有构成重写则编译报错public void show() { super.show(); // 表示调用父类的show方法 System.out.println(原创 2022-01-05 02:50:01 · 245 阅读 · 0 评论 -
34_继承
继承继承的由来继承的概念当多个类之间有相同的特征和行为时,可以将相同的内容提取出来组成一个公共类,让多个类吸收公共类中已有特征和行为之后而在多个类型各自内部只需要编写自己独有特征和行为的机制,叫做继承。在Java语言中使用extends(扩展)关键字来表示继承关系。如:public class Worker extends Person {} - 表示 Worker 类继承自 Person 类其中 Person 类叫做超类、父类、基类其中 Worker 类叫做派生类、子类、孩子类原创 2022-01-05 02:49:13 · 98 阅读 · 0 评论 -
33_单例设计模式(重中之重)
单例设计模式案例:Singleton和SingletonTest类的框架实现(重中之重)---------> 有关static关键字编程实现Singleton类的封装。编程实现SingletonTest类对Singleton类进行测试,要求main方法中能得到且只能得到该类的一个对象。/* 编程实现Singleton类的封装 */public class Singleton { // 2.声明本类类型的引用指向本类类型的对象,使用private static关键字共同原创 2022-01-05 02:47:34 · 75 阅读 · 0 评论 -
32_static关键字
static 关键字基本概念使用static关键字修饰成员变量表示静态的含义,此时成员变量由对象层级升级为类层级,也就是整个类只有一份并被所有对象共享,该成员变量随着类的加载 (把字节码文件往内存中读的过程) 准备就绪,与是否创建对象无关(在创建对象前使用类名.的方式去访问就可以判断出与是否创建对象无关了)。static 关键字修饰的成员可以使用引用 . 的方式访问(对象层级),但推荐使用 类名 . 的方式(类层级)。/* 编程实现People类的封装 */ publi原创 2022-01-05 02:46:01 · 109 阅读 · 0 评论 -
31_Person类和测试类的实现
案例题目编程实现People类的封装,特征有:姓名、年龄、国籍,要求提供打印所有特征的方法。编程实现PeopleTest类,main 方法中使用有参方式构造两个对象并打印。/* 编程实现People类的封装 */ public class People { // 1、私有化成员变量 private String name; // 姓名 private int age; // 年龄 private String country; // 国籍 // 3、在构造原创 2022-01-05 02:44:07 · 803 阅读 · 0 评论 -
30_封装
30_封装封装的概念通常情况下可以在测试类给成员变量赋值一些合法但不合理的数值,无论是编译阶段还是运行阶段都不会报错或者给出提示,此时与现实生活不符。/* 编程实现Student类的封装 */ public class Student { int id; // 用于描述学号的成员变量 String name; // 用于描述姓名的成员变量 // 自定义成员方法实现特征的打印 void show() { System.out.println("我是" + n原创 2021-12-27 23:05:24 · 119 阅读 · 0 评论 -
29_阶乘
案例题目编程实现参数n的阶乘并返回,所谓阶乘就是1累乘到n的结果。方法一:递推/* 编程实现累乘积的计算并打印 */ public class JieChengTest { // 1、自定义成员方法实现将参数n的阶乘计算出来并返回 // 1! = 1; 2! = 1 * 2; 3! = 1 * 2 * 3; ... n! = 1*2*3*...*n; int show(int n) { // 递推 int num = 1; for(int原创 2021-12-27 23:03:48 · 339 阅读 · 0 评论 -
28_this关键字
28_this 关键字this 的基本概念若在构造方法中出现了this关键字,则代表当前正在构造的对象。若在成员方法中出现了this关键字,则代表当前正在调用的对象。this 关键字本质上就是当前类类型的引用变量。/* 编程实现this关键字的使用 */ public class ThisTest { // 自定义构造方法 ThisTest() { // 若在构造方法中出现了this关键字,则代表当前正在构造的对象 System.out原创 2021-12-27 23:00:28 · 95 阅读 · 0 评论 -
27_重载
27_重载方法重载的概念若方法名相同,参数列表不同,这样的方法之间构成重载关系(Overload)。重载的体现形式方法重载的主要形式体现在:参数的个数不同、参数的类型不同、参数的顺序不同,与返回值类型(不考虑接收返回值的情况下,两个方法的效果是一样的)和形参变量名(虽然只是变量名不一样,但是其它的都一样,根本原因,我在main方法中调用的时候无法分清到底调用的是哪一个方法,因为传递的实参两个方法都能接)无关,但建议返回值类型最好相同(如果方法的返回值都相同,无论我调用哪个版本,都是统一的处理原创 2021-12-27 22:59:32 · 146 阅读 · 0 评论 -
26_构造方法
26_构造方法构造方法的概念和使用Person p = new Person(); // 声明Person类型的引用指向Person类型的对象。p.show(); // 拿着引用变量 p 去调用名字为show的成员方法。// 构造方法没有返回值类型,方法名与类名相同class 类名 { 类名(形参列表) { 构造方法体; }}class Person { Person() { - Person 类的构造方法 }}构造方法名与类名原创 2021-12-27 22:58:24 · 408 阅读 · 0 评论 -
25_类和面向对象的概念
25——类和面向对象的概念面向对象编程的概念是JavaSE最重要的万物皆对象-------------先找对象面向对象指以属性(比如身高、体重,又称特征)和行为的观点去分析现实生活中的事物。------------分析行为特征面向对象编程指先以面向对象的思想对对象进行分析,有什么特征、什么行为,分析完然后使用面向对象的编程语言进行表达(翻译)的过程。C:面向过程;C++:既面向过程,又面向对象;Java:纯粹面向对象编程语言面向过程:安排第一步干什么,第二步干什么,规定了什么时候干什么,关注原创 2021-12-21 16:56:07 · 380 阅读 · 0 评论