栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA学习 Day07:JAVA面向对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA学习 Day07:JAVA面向对象

一、什么是面向对象OOP

属性+方法 就构成了一个类

  • 对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统,但是具体到微观操作,仍然需要面向过程的思路去处理
  • 以类的方式组织代码,以对象的组织(封装)数据
  • 封装、继承、多态
二、方法的加深和回顾 1.方法的定义
  • 修饰符
  • 返回类型
  • break:跳出switch,结束循环 return结束方法,返回一个结果
  • 方法名:注意规范,见名知意
  • 参数列表:(参数类型,参数名)…
  • 异常抛出
package com.oop;

import java.io.IOException;
import java.util.function.IntBinaryOperator;

public class Demo01 {//Demo01类
    //main 方法
    public static void main(String[] args) {

    }
    
    //return 结束方法,返回一个结果
    public String sayHello(){
        return "hello,word";
    }

    public  int max(int a ,int b ){
        return a > b ? a: b;
    }


    public  void  readFile(String file) throws IOException{//抛出异常

    }
}

2.方法的调用

1.静态方法

package com.oop.demo01;

public class Demo02 {
    public static void main(String[] args) {
        Student.say();
    }

}
package com.oop.demo01;

//学生类
public class Student {
    //静态方法
    public static void  say(){
        System.out.println("学生说话了");

    }
}

2.非静态方法

package com.oop.demo01;

public class Demo02 {
    public static void main(String[] args) {
        //实例化这个类 new
        // 对象类型 对象名 = 对象值
        Student student = new Student();
        student.say();
    }

}
package com.oop.demo01;

//学生类
public class Student {
    //非静态方法
    public  void  say(){
        System.out.println("学生说话了");

    }
}

3.形式参数和实际参数

package com.oop.demo01;

public class Demo03 {
    public static void main(String[] args) {
        //实际参数和形式参数的类型要对应
        int add = Demo03.add(1, 2);
        System.out.println(add);

    }
    public static  int add(int a , int b){
        return a+b;
    }
}

4.值传递和引用传递

package com.oop.demo01;

import org.ietf.jgss.Oid;

//引用传递:传递一个对象,本质还是值传递
public class Demo05 {
    public static void main(String[] args) {
        //实例化的过程
        Person person = new Person();

        System.out.println(person.name);//null

        Demo05.change(person);
        System.out.println(person.name);

    }
    public static void  change(Person person ){
        person.name ="名字";
    }
}

//定义了一个Person类,有一个属性:name
class Person{
    String name;//null
}

5.this关键字

三、对象的创建分析

1.类与对象的关系
类是一种抽象的数据类型,他是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物
对象是抽象概念的具体实例

  • 类是对象的模板
  • 使用new创建对象
package com.oop.demo02;

// 学生类
public class Student {
    //属性:字段
    String name;
    int age;

    //方法

    public  void study(){
        System.out.println(this.name +"在学习");
    }

}
package com.oop.demo02;

// 一个项目应该只存一个main方法
public class Application {
    public static void main(String[] args) {
        //类是抽象的,需要实例化
        //类实例化后会返回一个自己的对象
        //student 对象就是一个Student类的具体实例
        Student xiaoming = new Student();
        Student xh = new Student();

        xiaoming.name = "小明";
        xh.name = "小红";
        xiaoming.age = 3;
        xh.age = 3;

        System.out.println(xiaoming.name);
        System.out.println(xiaoming.age);
        System.out.println(xh.name);
        System.out.println(xh.age);
    }
}


四、面向对象三大特性 五、抽象类和接口 六、内部类及OOP实战
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/315525.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号