我的账户
啄木鸟学院

专注软件测试菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

java-樊江飞-2021.03.09

[复制链接]
皮皮虾学员认证 发表于 2021-3-9 19:01:31 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
package day03;
/*
面向过程:
    最小的处理单位是函数。把大的问题分解成小问题,每个问题一个函数来实现。
    把大象装入冰箱:
    1、打开冰箱门
    2、把大象装入冰箱
    3、关上冰箱门
面向对象:
    最小的处理单位是类。把大象装入冰箱,这个过程中有哪些事物,每个事物的
行为。
    1、冰箱:开门,关门
    2、大象:进入(冰箱)
    3、人:打开(冰箱)、操作(大象)、关闭(冰箱)
    属性:成员变量
    行为:方法
*/
public class Demo01 {
    public static void main(String[] args) {
        Student zhangSan = new Student();
        zhangSan.name = "张三";  //调用的属性,设置或者获取属性的值
        zhangSan.age =18;
        zhangSan.gender='男';
        zhangSan.height = 170;
        zhangSan.weight = 65;
        zhangSan.sleeping();//调用无参的方法
        zhangSan.learning("图书馆","三国演义"); //调用有参的方法
        zhangSan.info();
        int a = zhangSan.getAge();  //有返回值的方法,用变量接收这个值。
        System.out.println("年龄:"+a);
        float d = zhangSan.getHeight();
        System.out.println("身高:"+d);

        Student liSi = new Student();
        liSi.name = "李四";
        liSi.age = 20;
        liSi.gender='女';
        liSi.height=190.5f;
        liSi.weight=55;
        liSi.learning("宿舍","Java"); //没有返回值的方法,默认返回是null
        liSi.info();

        int aa = liSi.getAge();  //有返回值的方法,用变量接收这个值。
        System.out.println("年龄:"+aa);

        float c = liSi.getHeight();
        System.out.println("身高:"+c);
    }
}
//类型:相同特征的一个群体。
class Student{      //首字母大写
    //成员变量(python 是在__init__方法中定义的)
    //成员变量:在类中定义的变量,属于实例,通过new创建实例的时候,这些属

性就创建了。实例销毁时,这些属性才会释放。
    //堆内存。(更新慢) public/private/static/final可以用来修饰成员变量

    //局部变量:在方法中定义的变量,或者方法的参数。调用方法的时候,才会

创建局部变量,方法调用完释放。
    //栈内存。(更新快)final可以用来修饰局部变量
    //成员变量和局部变量名字可以一样,成员变量加this来标识。
    String name;
    char gender;
    int age;
    float height;
    float weight;
    public void setName (String name){
        //成员变量和局部变量名字可以一样,成员变量加this来标识。
        //=后面的name是局部变量
        this.name = name;
    }
    public void info(){
        System.out.println("姓名:" + name +",性别:"+gender+",年龄:" +
age +",身高:"+ height+",体重:"+weight);

    }
    //void 表示没有返回值
    //public表示公共的
    //()里面没有内容,表示没有参数
    public void sleeping(){
        System.out.println(name + "正在睡觉");
    }
    //方法带了两个String类型的参数,一个表示地点,一个表示书
    public void learning(String place,String book){
        System.out.println(name + "在" +place + "看" + book);
    }
    //方法声明返回一个int类型的值,方法体中用return返回对应类型的值。
    public int getAge(){
        return  age;
    }
    public float getHeight(){
        return height;
    }
}
package day03;

import java.util.Arrays;

/*

*/
public class Demo06 {
    public static void main(String[] args) {
        //新建3个学生,把学生加入数组
        Students s1 = new Students("lily",80);
        Students s2 = new Students("lucy",90);
        Students s3 = new Students("Tony",98);
        Students[] ss = {s1,s2,s3};
        System.out.println(Arrays.toString(ss));

        Students s4 = new Students("jack",50);
        System.out.println(s4);
        modifyScore(s4);
        System.out.println(s4);
    }
    //修改学生的分数,如果小于60,将分数提高为60.
    public static void modifyScore(Students stu){
        if(stu.score<60){
            stu.score = 60;
        }
    }
}
class Students{
    String name;
    float score;
    public Students(String name, float score) {
        this.name = name;
        this.score = score;
    }

    @Override
    public String toString() {
        return "Students{" +
                "name='" + name + '\'' +
                ", score=" + score +
                '}';
    }
}
package day03;
/*
构造方法:
    1、与类名相同。没有返回值,不能有return语句。
    2、类里面没有写构造方法,系统会默认提供一个无参的构造方法。
    3、类里面有构造方法,这个默认的构造方法就不存在。
    4、构造方法支持重载,创建实例时更灵活。
    5、构造方法用IDE可以自动生成。
*/
public class Demo04 {
    public static void main(String[] args) {
        Pet pet = new Pet();  //调用构造方法Pet() 创造实例。
        Pet1 p = new Pet1("旺财",5);  //调用构造方法 Pet1()创建实例。
        //p.name = "";
        //p.age = 10;
        //类里有toString方法,打印时强调toString方法:
        //没有toString方法时,打印内存地址
        System.out.println(p);

        Pet1 p2 = new Pet1("加菲猫");
        System.out.println(p2);
        Pet1.Pet2 p21 = new Pet1.Pet2("小黑",5,20.0f,"狼狗","吃肉");
        System.out.println(p21);
        //创建一个实例,给每个属性赋值。
        Pet1.Pet2 p22 = new Pet1.Pet2();
        p22.name = "小白";
        p22.age = 5;
        p22.weight = 10.5f;
        p22.aiHao = "篮球";
        System.out.println(p22);
    }
}
//
/*
宠物类
*/
class Pet{
}
class Pet1{
    String name;
    int age;
    Pet1(String a,int b){   //构造方法,给属性赋值
        name =a;
        age = b;
    }
    Pet1(String a){
        name = a;
    }

    @Override
    public String toString() {
        return "Pet1{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
static class  Pet2{
        String name;
        int age;
        float weight;
        String pinZhong;
        String aiHao;
    //构造方法
    public Pet2(String name, int age, float weight, String pizhong,

String aiHao) {
        this.name = name;
        this.age = age;
        this.weight = weight;
        this.pinZhong = pinZhong;
        this.aiHao = aiHao;
    }
    public Pet2(){
    }
    @Override
    public String toString() {
        return "Pet2{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", weight=" + weight +
                ", pinZhong='" + pinZhong + '\'' +
                ", aiHao='" + aiHao + '\'' +
                '}';
    }
}
}

回复

使用道具 举报

关注0

粉丝0

帖子25

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注软件测试菁英教育

客服电话:17792550360

客服时间:9:00-21:00

卓目鸟学苑 - 专注软件测试菁英教育!( 陕ICP备20001493号-1 )

版权所有 © 西安菁英教育科技有限公司 2023-2026