黑马学习笔记3

--------------------android培训java培训、期待与您交流! ------------------

java是面向对象的语言,首先什么是面向对象呢
一:理解面向对象
在java中有句话叫做“万事万物皆对象”深刻理解之后就能感觉到面向对象符合人类的思想,和做事方式。每个对象具有自己的功能,例如:人,车,飞机,计算机。它们都是一个对象都具有功能。
二:面向对象的优势
用面向对象的思想编程,可以使问题简单化,想c语言就是面向过程的,它的程序是由一个个函数构成的,需要什么功能就调用功能方法,这样会让问题很复杂,所以c编写比java要难的多。而利用面向对象编程就容易的多例如:
一个软件公司有如果是面向过程的思想的话,老板要一个人把一个项目自己独自完成,从需求设计---到测试运行。周期要好久
但是要是利用面向对象编程的话,就简单了,可以招聘程序员,测试员等 协作完成那么周期必定会减少。
三:面向对象的特征
面向对象的三大特征:
封装 继承 多态
首先了解 类 :类是一类对象的抽象。例如:人类,汽车
        对象:是类的具体实现。 例如:张三,李四,王五,宝马,法拉利

(1)封装
封装的概念:就是把一类事物的属性隐藏其具体实现,只提供对外公用的方法去操作属性的值。
封装的优点: (1):将变化隔离(2):便于使用(3):提高重用性(4):提高安全性
使用private 修饰属性;外界将不可以直接访问该属性的值,想要访问该属性就必须要提供一个公共的方法例如:
public class Person{
  private String name;
  private int age;
  public String setName(String name)
  {
    this.name=name;
   }
   public String getName()
   {
    return name;
    }
  
public int  setAge(int Age)
   {
    this.age=age;
   }


}
(2)继承 extends
当存在两个类 A类和B类的关系存在着is a 时候 可以让 A类继承 B类
当A类继承B类以后A类就可以使用B类中的方法和属性(私有的不可以)
继承的优点是:
1.提高代码的复用性。
2.类与类之间产生了关系。有了这个关系,才有了多态的特性。
继承的特点:
java中只支持单继承,不支持多继承,因为多继承容易带来安全隐患。
例如 子类和父类的功能相同时不知道运行哪个。
解决这个办法可以用final关键字(被final修饰的属性和方法是最终的。)
Java继承的举例

public class Person{
  private String name;
  public String setName(String name)
  {
    this.name=name;
   }
   public String getName()
   {
    return name;
    }

public Person (String name){
this.name=name;
}
public void sleep(){

System.out.println("睡觉");
}

  public class Student extends Person{

  private

      public Student (String name ,int age){
       super(name);
         this.age=age;
     }
}
这样在主函数中 Student 就可以直接使用 Person 中的name 属性 和 sleep方法可以提高代码的重用性。

(3)多态

    多态分两种:
1、编译时多态:编译时动态重载;
2 运行时多态:指一个对象可以具有多个类型,方法的覆盖 
    首先, 要明确Child对Parent发生了方法的overload还是overwrite,根据参数类型及个数。 
    如果是overload,则Child继承了Parent的方法,相当于Child多加了父类的方法。 
    如果是overwrite, 则Child类不会有父类的该方法,而是把该方法重写了,所以该方法存在于父类中,子类只是重写了。要想调用父类的该方法,只能通过super关键字调用。

--------------------android培训java培训、期待与您交流! ------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值