本周,我学习了书本上第四章的内容,如下是我整理的主要知识。java
面向机器git
表明语言:汇编语言,执行速度快。面向过程算法
表明语言:C语言编程
int max(int a,int b){ if(a>b) return a; else return b; }
面向对象数组
在学习面向对象语言的过程当中,一个简单的理念就是:须要完成某种任务时,首先要想到,谁去完成任务,即哪一个对象去完成任务。编程语言
表明语言:Java,C++学习
类产生具体的对象this
3.1 封装性
3.2 继承
3.3 多态设计
类是Java程序的基本要素,一个Java应用程序就是由若干个类所构成的。调试
类是Java语言中最基本的“数据类型”,类封装这数据和对数据的操做。
类声明的变量被称做对象变量,简称变量。
(public) class PeopleChina
类体:变量声明(属性)+方法(行为)
(1)成员变量:变量声明部分声明的变量,有效范围整个类和书写位置无关。
(2)方法:定义方法
方法体:局部变量和语句构成
参数在方法内有用
方法体内声明的是局部变量,只在方法内有效与书写位置有关
局部变量与成员变量同名:成员变量被隐藏暂时失效。
局部变量没有默认值。
构造方法
建立对象时用
构造方法的名字和类名同样,没有类型 (1)默认的构造方法,若是不定义构造方法,系统提供默认的构造方法。 (2)自定义构造方法,自定义的多个构造方法必须参数不一样,个数不一样,或对应的某个参数类型不一样。
建立变量
(1)声明对象
类的名字 对象名字
(2)为声明的对象分配变量。
用new运算符号和构造方法
使用对象
避免使用空对象,不要让空对象去访问变量或方法
对象的引用和实体
对象自己存放着引用,本身能够操做分配本身的变量,调用类提供的方法分配给对象的变量称做对象的实体
两个类型相同的对象,若是两者的引用相同,那么两者就具备彻底相同的实体。
将应用程序涉及的Java源文件保存在相同的目录下,分别编译
运行主类
传值机制:方法中参数变量的值是调用者制定的值的拷贝
基本数据类型参数的传值:向该参数传递的值得级别不能够高于该参数的级别
引用类型参数的传值:类型相同两个数组,一旦引用相同,就有同样的单元,同样的实体。
可变参数:在声明方法时不给出参数列表中从某项开始直至最后一项的名字和个数。
组合和复用:“黑盒”复用,当前对象随时能够更换所包含的内容,属于弱耦合关系。
实例变量和类变量的声明:static 修饰的是类变量,没有static修饰的是实例变量。
实例变量和类变量的区别:
(1)不一样对象的实例变量互不相同
(2)全部对象共享类变量
(3)经过类名直接访问类变量,实例变量不能用类名访问,只能用对象访问
实例方法和类方法的定义:static区分
实例方法和类方法的区别:
(1)对象调用实例方法,只能对象来调用,实例方法能够操做实例成类变量。
(2)类名调用类方法,对象也能调用,类方法只能操做类变量
(3)设计类方法的原则:算法不须要操做成员变量,就能够考虑将这样的算法写成类方法。
一个类中能够有多个方法具备相同的名字,但这些方法的参数必须相同
避免重载出现歧义:重载方法之间必须保证相互的参数不一样。
this能够出如今实例方法和构造方法中,但不能够出如今类方法中
在构造方法中使用this:表明使用该构造方法所建立的对象
在实例方法中使用this:只能经过对象来调用,表明正在调用该方法的对象。
包语句: package
有包名的类的存储目录:例:package tom.package ---->c:\1000\tom\jiafei
运行有包名的主类:例:java tom.jiafei.主类名
引入类库中的类:import语句,能够有多个import语句,必须写在package语句和源文件中类的定义之间
引入自定义包中的类
访问权限指对象是否能够经过“.”运算符来操做本身的变量或经过“.”运算符调用类中的方法。
私有变量和私有方法:用关键字private修饰,若是类中的某个成员是私有类变量或方法,那么在另一个类中,不能经过此类名来操做这个私有类变量或类方法。
共有变量和共有方法:public修饰,若是类中的某个成员是public类变量或方法,那么在另一个类中,能经过此类名来操做这个私有类变量或类方法。
友好变量和友好方法:不用private,public,protected修饰的变量和方法。若是类中建立了一个对象,若在同一个包中,那么在另一个类中,能经过此类名来操做这个私有类变量或类方法。
受保护的成员变量和方法:用protected来修饰
public类与友好类
Java提供与基本数据类型相关的类,实现了对基本数据类型的封装。
数组的元素是对象
Student [] stu; stu=new Student[10];
建立一个jar文件:jar cfm Jerry.jar hello.mf moon\star\TestOne.class moon\star\TestTwo.class
放入扩展中
问题2:
问题2解决方案:在Ladder.java中将above,bottom,height错误定义成float形式。
问题3解决方案:在此问题中,虽然错误标识指向100,但实际上是;误写为中文中的符号。在对这一行仔细检查以后发现。
问题4解决方案:在此问题中,应引入的是Date类,输入错误致使。
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 37/37 | 1/1 | 10/10 | |
第二周 | 399/436 | 1/2 | 12/22 | |
第三周 | 764/1163 | 1/3 | 18/40 |