zoukankan      html  css  js  c++  java
  • 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;        
        }
    }
  • 相关阅读:
    【Linux】iptables相关实践,原理及参数解释
    【Linux】解决Linux服务器内存不足问题
    【原】Linux环境下Shell调用MySQL并实现定时任务
    Nginx配置,413 Request Entity Too Large错误解决
    【MAC】Mac下部分常用的小工具
    好久不见
    HashMap工作原理(转载)
    Java中long和Long有什么区别 (转载)
    Explain in detail the steps/processes that occur from the moment you type a URL in a browser and hit enter
    Find Minimum in Rotated Sorted Array leetcode java
  • 原文地址:https://www.cnblogs.com/donghb/p/7197426.html
Copyright © 2011-2022 走看看