Java教程

JAVA面向对象01

本文主要是介绍JAVA面向对象01,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

JAVA面向对象01

初识面向对象

  • java的核心思想就是OOP(Object-Oriented Programming,面向对象编程)

  • 面向过程思想

    • 步骤清晰简单,第一步做什么,第二步做什么...
    • 面对过程适合处理一些较为简单的问题
  • 面向对象思想

    • 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考,最后才对某个分类下的细节进行面向过程的思索
    • 面向对象适合处理复杂的问题,适合处理需要多人协作的问题
  • 属性加方法就是一个类

  • 面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据

  • 抽象

  • 三大特性

    • 封装
    • 继承
    • 多态
  • 从认识论角度考虑是现有对象后有类(先有人,然后有教师的类),对象,是具体的事物,类是抽象的,是对对象的抽象

  • 从代码运行角度考虑是先有对象,类是对象的模板


回顾方法及加深

  • 方法的定义

    • 修饰符
    • 返回类型
    //main 方法
     public static void main(String[] args) {
    
     }
    /*
    修饰符  返回值类型  方法名(...){//方法体
    return 返回值
     */
     public String sayHello(){
         return "Hello,World";
     }
    
    • break和return的区别(break:跳出switch,结束循环,return代表结束方法,返回一个结果,可为空void)
    • 方法名:注意规范,见名知意
    • 参数列表:(参数类型,参数名)...
    • 异常抛出
    public void readFile(String file) throws IOException{
    
    }
    
  • 方法的调用:如递归

    • 静态方法
    • 非静态方法
    public class Demo02 {
        public static void main(String[] args) {
            //实例化这个类 new
            //对象类型 对象名 = 对象值
            Student student = new Student();
            student.say();
    
        }
    
        //和类一起加载的
        public static void a(){
    
        }
    
        //非静态类实例化之后才存在
        public void b(){
    
        }
    }
    
    //学生类
    public class Student {
        //非静态方法
        //遵循一个原则:被static修饰的内容会跟随类的加载而加载,
        //所以静态化的内容可以不用实例化就直接调用,同时两个静态方法之间也可以互相调用
        public void say(){
            System.out.println("学生说话了");
        }
    }
    
    • 形参和实参
    public class Demo03 {
        public static void main(String[] args) {
            Demo03 demo03 = new Demo03();
            demo03.add(2,3);
            //如果是static方法则可以直接
            //Demo3.add()
            //实际参数和形式参数的类型要对应
        }
    
        public int add(int a,int b){
            return a+b;
        }
    }
    
    • 值传递和引用传递
      • 值传递是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数
      • 所谓引用传递是指在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数
    • this关键字
这篇关于JAVA面向对象01的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!