java面向对象知识点

第1章类和对象(知识点)
一.创建类
1.定义类名
            语法:
            public class 类名{
            }
2.编写类的属性
    通过在类的主体中定义变量来描述类所具有的静态特征(属性),这些变量称为类的成员变量。
3.编写类的方法
    通过在类中定义方法来描述类所具有的行为,这些方法称为类的成员方法。
    语法:
    访问修饰符   返回值类型   方法名(){
    //方法体
    }
二.创建和使用对象
  1.创建对象:
    语法:
    类名   对象名  =  new   类名();
 2.使用对象:
    语法:
    对象名.属性  //引用对象的属性
    对象名.方法名()//应用对象的方法
三.面对对象的优点:
 1.与人类的思维习惯一致:面对对象的思维方式从人类考虑问题的角度出发,把人类解决问题的思维过程转变为程序能够理解的     过程。面对对象程序设计能够让我们使用“类”来模拟现实世界中的抽象概念,用“对象”来模拟现实世界的实体,从而使用     计算机解决现实问题。
 2.信息隐藏,提高了程序的可维护性和安全性:封装实现了模块化和信息隐藏,即将类的属性和行为封装在类中,这保证了对它      们的修改不会影响到其他对象,有利于维护。同时,封装使得在对象外部不能随意访问对象的属性和方法,避免了外部错误对     它的影响,提高了安全性。
 3.提高了程序的可重用性:一个类可以创建对个对象实例,增加了重用性。
本章总结:
 1.对象是用来描述客观事物的一个实体,由一组属性和方法构成。
 2.类定义了对象将会拥有的特征(属性)和行为(方法)。
 3.类和对象的关系是抽象和具体的关系。类是对象的类型,对象是类的实例。
 4.对象的属性和方法被共同封装在类中,相辅相成,不可分割。
 5.使用类的步骤如下:
   1.定义类:使用关键字class。
   2.创建类的对象:使用关键字new。
   3.使用类的属性和方法:使用“.”操作符。

第2章类的无参,带参方法
1.定义带参方法
    <访问修饰符> 返回值类型 <方法名> (<参数列表>){
        //方法的主体
    }
    (1)<访问修饰符>只该方法允许被访问的权限范围,只能是public,protected或prive。其中public访问修饰符表示该方法可           以被任何其他代码调用。
    (2)返回值类型指方法返回值的类型。如果方法不返回任何值,它应该声明为void类型。java对待返回值的要求很严格,方法返         回值必须与所说明的类型相匹配。使用return语句返回值。
  (3)<方法名>是定义方法的名字,它必须使用合法的标识符。
  (4)  <参数列表>是传递给方法的参数列表。列表中各参数间以逗号分隔。参数列表的格式如下。
            语法:
                数据类型   参数1,数据类型 参数2,....,数据类型  参数n
  本章总结:
1.定义类的方法必须包括以下三个部分。
     *方法的名称。
     *方法返回值的类型。
     *方法的主体。
2.类的方法调用,使用如下两中形式。
     *同一个类中的方法,直接使用方法名调用该方法。
     *不同类的方法,首先创建对象,再使用"对象名.方法名"来调用。
3.在java中,有成员变量和局部变量,它们的作用域各不相同。
4.在javaDoc注释以“/**”开头,以“*/”结尾,并提供了JavaDoc注释标签。使用javaDoc技术可以生成开发文档。
5.调用带参方法与调用无参方法的语法是相同的,当是在调用带参方法时必须传入实际的参数的值。
6.形参是在定义方法时对参数的称呼,实参是在调用方法时传递给方法的实际的值。
7.java中提供包来管理类。声明包使用关键字package,导入包使用关键字import。
第3章对象和封装
Java 中如何创建对象、调用属性及方法。
(1)通过构造方法来创建对象,如“Penguin p=new Penguin( ):。
(2)通过对象名.属性名的方式调用属性,如“p.name="qq"
(3)通过对象名.方法名的方式调用方法,如“p.print( );
如果同一个类中包含了两个或两个以上的方法,它们的方法名相同,方法参数的个数或参数类型不同,则称该方法被重载了,这个过程称为方法重载,成员方法和构造方法都可以进行重载。
方法重载的判断依据如下。
(1)必须在同一个类里。
(2)方法名相同。
(3)参教列表(方法参
        数的个数或参教类型) 不同。
(4)与方法返回值和方法修饰符没有任何关系。
(5)在使用this调用自身的其他构造方法时,只能作为第一条语句。
static的用法
(1)在加载类的过程中,完成静态变量的内存分配,再执行静态块,
两者是在创建对象之前执
行的。
(2)类属性和类方法可以通过类名和对象名访问,实例属性和实例方法只能通过对象名访问,
类方法只能访问类属性和其他类方法。

封装的具体步骤: 修改属性的可见性来限制对属性的访问:为每个属性创建一对赋值(setter)方法和取值(getter)方法,用于对这些属性的存取; 在赋值方法中,加入对属性的存取控制语句。
封装的好处:隐藏类的实现细节;让使用者只能通过程序规定的方法来访问数据;可以方便地加入存取控制语句,限制不合理的操作。
封装时会用到多个权限控制符来修饰成员变量和方法,区别如下。
(1)private: 成员变量和方法只能在其定义的类中被访问,具有类可见性。
(2)默认: 成员变量和方法只能被同一个包里的类访问,具有包可见性。
 
(3)protected:可以被同一个包中的类访问,被同一个项目中不同包中的子类访问。

本章总结:
(1)现实世界是“面向对象”的,面向对象就是采用“现实模拟”的方法设计和开发程序。
(2)面向对象设计是目前计算机软件开发中最流行的技术。面向对象设计的过程就是抽象的过程。
(3)类是对某一类事物的描述,是抽象的、概念上的定义。对象是实际存在的该事物的个体是具体的、现实的。
(4)如果同一个类中包含了两个或两个以上的方法,它们的方法名相同,方法参数个数或参数
类型不同,则称该方法被重载了,这个过程称为方法重载。
(5)构造方法用于创建类的对象。构造方法的主要作用就是在创建对象时执行一些初始化操作。可以通过构造方法重载来实现多种初始化行为。
(6)封装就是将类的成员属性声明为私有的,同时提供公有的方法实现对该成员属性的存取
操作。
(7)封装的好处: 隐藏类的实现细节: 让使用者只能通过程序规定的方法来访问数据; 可以方
便地加入存取控制语句,限制不合理的操作。

第4章继承
继承:满足is a的关系,可以通过关键字extends来实现继承.
1.会继承父类的属性跟方法(不包括用private修饰的属性和方法)
2.继承的关键字是  extends
3.被继承的对象称之为父类,继承者称之为子类
4.父类的构造方法只能被子类调用,不能被继承
5.任何一个类都有一个默认的父类 Object(对象)
重写和重载
重写:发生在父类和子类之间的同名方法,要求方法名,参数列表,返回值类型都要相同.访问修饰符不能不能比父类小
重载:发生在同一个类中,要求方法名相同参数列表不同,与返回值类型及访问修饰符无关
super:调用父类的属性及方法,如果是调用父类的构造方法,位置必须是在子类的构造方法体内的第一行代码
调用执行顺序:父类的成员变量   > 父类的构造方法  > 子类的成员变量  >  子类的构造方法
访问修饰符
1,public :只要是在本工程的方法跟属性   都可以访问的到
2,private:修饰的属性跟方法只能在本类中使用
3,protected:修饰的属性跟方法能够  同一个包下被使用   子类 
4,default: 本类  同包

第5章多态
1.通过多态可以减少类中的代码量,可以提高代码的可扩展性和可维护性。继承是多态的基础,没有继承就没有多态。
2.把子类转换为父类称为向上转型,自动进行类型转换,把父类转换为子类称为向下转型,必须进行强制类型转换。
3.向上转型后通过父类引用变量调用的方法是子类覆盖或继承父类的方法,通过父类引用变量无法调用子类特有的方法。
4.向下转型后可以访问子类特有的方法,必须转换为父类指向的真实子类类型,否则将出现类型转换异常ClassCastException。
5.instanceof运算符用于判断一个对象是否属于一个类或实现了一个接口
6.instanceof运算符通常和强制类型转换结合使用,先通过instanceof进行类型判断,再进行相应的强制类型转换。
7.使用父类作为方法形参和使用父类作为返回值类型是使用多态的常用方式。

第6章接口
本章总结:
1.接口中的属性都是全局静态常量,接口中的方法都是全局抽象方法,接口中没有构造方法。
2.类只能继承一个父类,但是可以实现多个接口,一个类如果实现了一个接口,则必须实现接口中的全部方法,否则必须将其定义为抽象类。Java通过实现接口达到了多重继承的效果。
3.接口表示一种约定,接口表示一种能力,接口体现了约定和实现相分离的原则
4.抽象类利于代码复用,接口利于代码维护。
5.通过面向接口编程,可以降低代码间的耦合性,提高代码的可扩展性和可维护性。
6.面向接口编程意味着:开发系统时,主体构架使用接口,接口构成系统的骨架,这样就可以通过更换实现接口的类来实现更换系统。

第7章异常
(1)异常是由java应用程序抛出和处理的非严重错误,它可以分为Checked异常和运行异常两大类
(2)Cheked 异常必须捕获或者声明抛出,否则无法通过编译。运行时异常不要求必须捕获或者
声明抛出。
(3)Java 的异常处理是通过五个关键字来实现的: try、catch、finally、throw 和throws。
(4)即使在try 块、catch 块中存在return 语句,finally 块中语句也会被执行。finally块中语句不
被执行的唯一情况是,在异常处理代码中执行System.exit()。
(5)可以在一个try语句块后面跟多个catch 语句块,分别处理不同的异常。但排列顺序必须是从特殊到一般,最后一个一般为 Exception 类。
(6)自定义异常类,一般需要继承Exception或RuntimeException。
(7)log4j是一个优秀的日志记录工具,常用使用方式是配置lo4j.properties文件,从而控制日志的输出级别,目的地和输出格式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值