java基础部分笔记(全) 联系客服

发布时间 : 星期一 文章java基础部分笔记(全)更新完毕开始阅读575e898c770bf78a652954f7

java基础部分笔记(全)

java基础部分笔记(全)note(javaoo_01)

====面向对象(Object Oriented,简称OO)==== 1.什么是对象? 在现实生活中,相当于是\东西\指的是一个具体的实例,不管是 看的见,看不见的,具体的,抽象的,都可以成为一个对象, 即:万物皆对象 2.什么是面向对象? 一种编程规范,也是一种编程技术,是一个抽象的思维方式,指的是 面向客观事物之间的关系,即对象与对象之间的关系. 3.如何使用面向对象? 根据客户提供的需求进行抽象出业务对象,然后对需求进行合理的 分层,构建出相对独立的业务模块,然后设计业务逻辑,再利用面向 对象的特点(封装,继承,多态)来实现具体的业务,最后通过整合, 达到高内聚,低耦合的效果,从而满足客户的需求. 5.面向对象中一些概念 1)类 (引用类型) -----> 人类,动物 2)对象(东西,具体一个实例) -->周启,麦兜 3)变量(引用,代词) ----> 某个人,某头猪 4)行为动作(方法) 5)封装:封装的目的就是为了程序的保密性,将核心的业务进行隐藏, 不让别人轻易看到,然后提供一个对外操作的接口,可以让别人去使用] 这个程序,比如计算机. 6)多态:一种行为动作在宾语不同的情况下发生改变的情况.(同一种 事物在不同情况下发生改变)比如:打人,打牌,打酱油. 7)继承:子类继承父类属性及方法. 8)成员属性:类的属性,如名字,性别 6.构造器(构造方法) 就是用来描述对象的创建过程. 原理(参数) 制碗工厂(类) -----------> 碗(对象) 生产线(构造器) 例:写个类,描述点. 注意: 1)构造方法的方法名跟类名一致. 2)构造方法不能声明返回类型. 3)构造方法可以有多个,之间的区别在于参数不一样. 4)java会默认生成一个无参数的构造器供开发者使用,但如果 开发者重新写了有参的构造器,这个默认的无参构造器会消失, 那么,一般情况下,会在写有参构造器的时候,顺带写上无参构造器.

7.实例化 就是借助构造器来产生一个新对象(使用关键字new). 8.this关键字 this是当前对象的引用,指的是对象本身. this()代表调用本类的其他构造器,以达到简化代码的目的.并且, this()只能出现在方法的第一行. --方法 语法: 修饰符 返回类型 方法名(参数列表){ } 9.方法的重载 方法名相同,参数不同,这是多态的一种体现. 注意: 方法重载与返回值无关,与参数有关 练习:1.给Point类一些重载的方法:Math.sqrt() 1)原点与点的距离(无参数) 2)点与点的距离(参数:x,y) 3)点与点的距离(参数:Point对象) 2.写一个Cicye类,属性:圆心,半径,计算圆面积的方法 ,点是否在圆内的方法Math.PI 3.写一个Person类,里面有如下属性:编号,姓名,性别,年龄,婚否, 身份证号,地址,电话,伴侣姓名 写一个方法,方法是一个结婚方法.需要进行合理判断 4.面向对象的方式: ez开船去钓鱼岛钓鱼 Person Ship Island Fish name name name name p type driver(Ship s) go(Island i) fishing(Fish f)

作业: 1)张三,王五,李四打牌,模拟洗牌,发牌 Card 牌 String num; String type; Card[] cards = new Card[54]; 2)写一个Rectangle类,属性:顶点,长,宽,判断点是否在矩形内

java基础部分笔记(全)note(javaoo_02)

1.值传递: 基本类型的值传递,传递的是自己本身的值的复制. 引用类型的值传递,传递的是自己的内存地址值的复制.

2.继承(extends) 用于表示概念上具体化延续的具体概念 特征: 1)子类继承父类的所有属性及方法. 2)构造器不能继承 3)子类构造器一定会调用父类的构造器.默认调用无参的构造器. 如果需要调用父类有参构造器,使用super关键字来指定调用哪个 父类构造器. super:指定父类 用来调用父类的方法以及属性. 特征: 1)super的使用跟this基本一样.this:本类资源;super: 父类资源 2)super()与this()一定要写在代码的第一行.super()与this()不能同时 使用.

3.实例化过程详解: step1:首先检索子类及父类字节码文件有没有被加载,如果没有被 加载,则使用懒加载进行加载(有且只加载一次),如果被加载了,则 直接使用. step2:为类里面的属性,从父类递归到自身进行属性的内存的空间的 划分,并且为所有的属性进行初始化(\零式化\ step3:进行属性的赋值. step4:从父类到子类递归调用默认构造器. 作业:

1、写一个Question.java的类,里面有题号id和题干text; 2、写一个ChoiceQuestion.java的类,它是Question的子类, 里面有选项options[]和打印的方法(print)

和一个检查答案正确性的一个方法(check(String [] answer)); 3、写两个ChoiceQuestion的子类,分别是SingleChoice.java

和MulChoice.java,这两个方法里面分别对check方法进行了重写, 他们里面各有各自的answer这个属性;

4、写一个PaperDemo.java的类,使用之前的类进行一个试卷类的书 写,要求能够写入两个单选题跟两个多选题,并且能够使用控制台输 入答案的形式来进行题目的打印和答案的判断

4.方法的覆盖(重写): 发生在有继承关系的子类里面,表示子类把父类的某一个方法进行 重新定义. Father{ say(){syso(1)} } Son extends Father{ say(int x){} say(){syso(2)} run(){} } main(){ Father f = new Son(); f.say(1); } 作业: 定义图形(Shape)及其子类: 设计图形(Shape)类及其子类(Circle、Rectangle) 1) Shap属性:Point p 代表图形位置 2) Shape提供计算面积方法area,子类(Circle、Rectangle) 覆盖父类area方法 3) Shape提供检查是否包含指定坐标的方法contains,子类覆盖

java基础部分笔记(全)note(javaoo_03)

1.访问控制符 概念:这种修饰符是用来控制它所修饰变量,方法, 以及类的访问作用域 类内 包内 子类 任意 public √ √ √ √ protected √ √ √ default √ √ private √ 注意: 1)一个java文件,只允许出现一个public修饰的类. 2)实体类中修饰属性使用private,为了进行封装.对属性的访问, 提供get,set方法. 2.JavaBean规范(POJO) 好处:代码容易阅读,减少犯错的可能. 规范内容: 1)必须要有包; 2)类中必须有无参构造器; 3)使用get,set方法进行属性的访问以及赋值.属性使用private修饰 4)实现序列化.