java中面向对象的理解

面对对象就是:
把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。对同类对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。程序流程由用户在使用中决定。
对象即为人对各种具体物体抽象后的一个概念,人们每天都要接触各种各样的对象,如手机就是一个对象。
在面向对象的编程方式中,对象拥有多种特性,如手机有高度、宽度、厚度、颜色、重量等特性,这些特性被称为对象的属性。对象还有很多功能,如手机可以听音乐、打电话、发信息、看电影等工作功能,这些功能被称为对象的方法,实际上这些方法是一种函数。而对象又不是孤立的,是有父子关系的,如手机属于电子产品,电子产品属于物体等,这种父子关系称为对象的继承性。在编程中,把所有的问题看做对象,以人的思维方式解决。这种方式非常人性化,对象实际上就是一组数据的集合,并且数据都已经命名。这些数据根据就是对象的属性,可以被程序访问。对象还包括很多函数,这些函数被称为对象的方法,也可以被程序访问。不过在外部访问对象内的属性或方法,必须先引用对象,然后用点号访问对象的属性和方法
面向过程就是:
自顶向下顺序执行,逐步求精;其程序结构是按功能划分为若干个基本模块,这些模块形成一个树状结构;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。程序流程在写程序时就已决定。

面向对象中的类,构造方法,成员变量,成员方法的例子:

package test;

public class Gouzao {

    public static void main(String[] args){
        Phone p = new Phone("华为",2000,"中国",113);//若此处不传值,那么调用类中的构造方法也不应该有形参,
        p.showPhone();
        p.panduan();
    }


}

class Phone{
    public String name;//品牌   //成员变量
    public int price;//价格
    public String from;//产地
    public int ppi;//分辨率
    
    public Phone(String n,int p1,String f,int p2){//构造方法,与类名一致,不用return
        name = n;
        price = p1;
        from = f;
        ppi = p2;
        
    }
    public int panduan(){ //如果返回值类型不是void,那么是需要ruturn出返回值的
        if(ppi<200){
            System.out.println("分辨率不大行");
        }
        return ppi;
    }
    
    public void showPhone(){//成员方法,用来实现各种功能
        System.out.println("型号:"+name);
        System.out.println("价格:"+price);
        System.out.println("产地:"+from);
        System.out.println("分辨率:"+ppi);
    }
} 

 面向对象思想做一个计算器

package test;

public class Cal {
    public static void main(String[] args){
        Calculater cals = new Calculater();//初始化这个类
        double result = cals.yunsuan(10,15,"+");
        System.out.println(result);
    }
}

class Calculater{ //创建这个类
    public String name;//类里定义的一个属性不需要初始化
    
    public double yunsuan(double a,double b,String c){//类的一个方法
        double d = 0;//方法里定义一个变量需要初始化
        switch(c){
            case "+":
                d = a+b;
                break;
            case "-":
                d = a-b;
                break;
            case "*":
                d = a*b;
                break;
            case "/":
                d = a/b;
                break;
        }
        return d;        
    }
}
原文地址:https://www.cnblogs.com/donghb/p/7197426.html