面向对象复习(JAVA最核心内容)

最核心设计类

第一章
一,面向对象学习的三条主线(4-6)
(174)
1.JAVA类以及类的成员:属性、方法、构造器、代码块、内部类
2.面向对象的三大特征:封装性、继承性、多态性。
3.其他关键字
二,面向对象和面向过程的区别
(175)
1.面向过程,考虑怎么做
2.面向对象,考虑谁来做(封装的调用)
三,类和对象
(176)
类:对一类事物的描述,是抽象的。
对象:对类的实例化。
四,设计类(属性和方法)
(177)
属性=成员变量=field(堆空间)
方法=成员方法=函数(栈空间)
五,类和对象在栈和堆
(179)
如果创建了一个类多个对象,则每个对象都独立拥有一套属性。
如果修改一个对象A,B的属性不受影响
开始画图
六,类和对象在栈和堆画图
(182-183)
成员变量VS局部变量
1.声明的位置不同
成员变量:在类的{}中
局部变量:在方法中、形参中、代码块内、构造器形参、构造器内部的变量
2.权限修饰符不同
成员变量:可以使用权限修饰符
局部变量:不可以写,其实用方法代替了
3.默认初始化值
成员变量:初始化为数据类型的初始化值定。
局部变量:没有初始化值,声明的时候必须赋值。特别的,形参是在调用的时候赋值。
4.内存中加载的位置不同
成员变量:在堆空间中
局部变量:在栈空间中
七,如何定义方法
(184-186)
1.有返回值类型的return是由方法类型定的如

Public string(返回值类型) name(){
return name
}

2,返回值的命名如果在方法里输出可以是随意的名字,如果通过调用的方式就应该要return一个属性名才可以调用
八、return
(187)
两个作用
第一个:结束一个方法
有返回值类型的方法:return 数据
九、方法的使用
一个类中 方法内可以调用方法,属性。格式 方法名();
不同类中怎么调用方法
1.import 包 new一个对象进行调用

public int jj(int age){
        ff fa =new ff();
        fa.eat();
        return age*22;
    }

2.在属性就new 好对象,属性内调用

public class text01 {
    String name ;
    int age;
    boolean male;
    ff fa =new ff();
    public text01(int k){
        System.out.println(k);
    }
    public int jj(ff fa){
        fa.eat();
        return age*22;
    }
}

一个方法内不能再定义方法,可以调用别的或自己的方法。

实例:

package bank;

public class user {
    public static void main(String[] args) {
        Customer use =new Customer("kevin","deng");
        Account ac=new Account(1000,100,0.126);
        use.setAccount(ac);
    }
}

//这里我使用user来调用 两个类

public class Customer {
    private String firstname;
    private String lastname;
    private Account account;

    public Customer(String f, String l) {
        f = firstname;
        l = lastname;
    }

    public void setAccount(Account account) {
        this.account = account;
    }

    public Account getAccount() {
        return account;
    }
}

//这里是一个类,套用了后面一个类

public class Account {
    private int id;
    private double balance;
    private double annuallnterestRate;
    public Account(int id,double balance,double annuallnterestRate){
    this.id=id;
    this.balance=balance;
    this.annuallnterestRate=annuallnterestRate;
    }

    public void setBalance(double balance) {
        this.balance = balance;
    }

    public double getBalance() {
        return balance;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getId() {
        return id;
    }

    public void setAnnuallnterestRate(double annuallnterestRate) {
        this.annuallnterestRate = annuallnterestRate;
    }

    public double getAnnuallnterestRate() {
        return annuallnterestRate;
    }
    public double deposit(double de){

        return balance-de;
    }
    public double withdraw(double wi){


        return balance-wi;

    }
}

**//这是最后一个类,我原来想通过第一个类来调用第二个类在第二个中调用第三个,因为我在第二个类里调用了第三个类,居然报错了。解决方法是要在use里也new一个第三个类的对象。

public class user {
    public static void main(String[] args) {
        Customer use =new Customer("kevin","deng");
        
        use.setAccount();//没有可以填的内容,但是提示需要内容,new了一个对象之后把对象放进去就OK了,相当于第二个类获得了第三个类的地址值。
    }
}

总结:
用一个main来调用几个给封装好的方法必须在main方法中都要给几个类new一个对象才行。**

通过use调用三个
**要用use.getAccount. 来调用第三个类,不能用use.getAccount. 嗲用,他是设置类的。
**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值