新手小白Java学习第三天笔记

java是高级语言中的面向对象语言!

        1.面向对象:

                1.分析当前例子中,参数者都有谁

                2.分析 参与者应该具备的行为或者能力(动作)。

                3.分析 参与者应该提供的属性。

        2.面向过程 VS 面向对象

        怎么做,每一步都需要由你来完成

        谁来做,找准对象。

        3.企业中完成项目开发步骤:

                A.面向对象分析阶段

                B.面向对象设计阶段

                C.面向对象编码阶段oop---开发者处于该阶段

        4.面向对象思想,解决问题步骤:

                A.将参与者提取成一个类。例如Student类 public class Student{ }

                B.确定参与者有应该具备的行为---定义方法。

                C.确定参与者应该具备的属性信息---定义属性。 ====创建类!

                D.根据类 创建对象, 对象.属性=值; 对象.方法()---解决问题。

        5.局部变量和成员变量(属性)的区别:

                1.声明位置不同: 局部变量在方法里; 成员变量在方法外

                2.默认值不同: 局部变量没有默认值; 成员变量有默认值(String--null ;int---0 ;double--0.0)

                3.作用域不同: 局部变量:从声明变量开始,到包裹的大括号结束。 成员变量:本类下(拿名直接用)+其他类(对象名.成员变量名)都可以使用

                4.生命周期不同: 局部变量:从声明变量开始,到当前所在方法执行内。 成员变量:从创建对象开始,到对象bei垃圾回收机制销毁。

                5.内存中存储位置不同: 局部变量 存储在栈里(栈里不稳定,随时清空) 成员变量 存储在堆里

                6.同名的局部变量和成员变量在相同的作用域内,局部变量的优先级更高

        6.static 静态的特点

                A.当前类下的所有static资源,都会【提前加载】到 内存的常量池里。

                B.使用static资源的时候,可以通过对象名.静态资源;也可以通过 【类名.静态资源】

        7.构造方法:

 什么是构造方法?
  用来创建对象【实例化】 和 为对象的属性赋初始值【初始化】
​
 构造方法的使用:
 如果你没有手动创建构造方法的话,那么java程序讲给你提供一个 无参,方法体为空的构造方法;
  如果你手动创建构造方法的话,那么程序将不再提供任何构造方法了。
 构造方法的特点:
 public 类名(){
 }

封装代码示例:

例一:

Person类

package com.jr.d722.fengzhuang;

public class Person {
    public Person(String name,int age,double heihgt,double weight,String sex){  //和下面的Person互为构造方法的重载
        this();     //构造方法之间互相调用,用this,并且必须在第一行
        this.name=name;     //加this,使name变为成员变量   name 属性
        this.age=age;
        this.heihgt=heihgt;
        this.weight=weight;
        this.sex=sex;
    }
    public Person(){    //和上面的Person互为构造方法的重载
        System.out.println("创建人类对象");
    }
    //准备属性(成员变量)
    String name;//姓名
    int age;//年龄
    double heihgt;//身高
    double weight;//体重
    String sex;//性别

    //准备方法
    public void introduce(){
        //介绍所有属性特征
        System.out.println("大家好!");
        System.out.println("我叫"+name+",今年"+age+"岁");
        System.out.println("我是一个身高"+heihgt+"体重"+weight+"的"+sex+"人");
    }

    public void work(String idea){
        System.out.println(name+"的工作理念是"+idea);
    }

}

 TestBook类

package com.jr.d722.fengzhuang;

import com.jr.d722.fengzhuang.Person;

public class TestBook {
    public static void main(String[] args) {
        Person person1=new Person("阿宝",25,175,120,"男");  //Person类 person1对象       构造方法,需要用new来调用
        /*person1.name="阿宝";
        person1.age=25;
        person1.heihgt=175;
        person1.weight=120;
        person1.sex="男";
         */
        person1.introduce();    //对象.方法()   普通方法可以用.直接调用

        System.out.println("**********************");

        Person person2=new Person();
        person2.name="美美";
        person2.age=21;
        person2.heihgt=165;
        person2.weight=100;
        person2.sex="女";
        person2.introduce();
        person2.work("工作是为了更好的生活");

    }
}

例二:

汽车品牌---Che类

package com.jr.d722.fengzhuang1;

public class Che {
    String pinpai;//品牌
    String xinghao;//型号
    String yanse;//颜色
    int shisu;//时速
    public void qidong(){
        System.out.println(yanse+"的"+pinpai+xinghao+"启动");
    }
    public void tingzhi(){
        System.out.println(pinpai+xinghao+"停止,"+"该车时速可以达到"+shisu+"km/h");
    }
}

Test1类

package com.jr.d722.fengzhuang1;

import com.jr.d722.fengzhuang1.Che;

public class Test1 {
    public static void main(String[] args) {
        Che che1=new Che();
        che1.pinpai="宝马";
        che1.xinghao="M6";
        che1.yanse="蓝色";
        che1.qidong();
        System.out.println("*********************");
        Che che2=new Che();
        che2.pinpai="奔驰";
        che2.xinghao="500SEL";
        che2.yanse="红色";
        che2.qidong();
        System.out.println("*********************");
        Che che3=new Che();
        che3.pinpai="奥迪";
        che3.xinghao="R10";
        che3.shisu=300;
        che3.tingzhi();
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值