从零开始学java (面向对象)

面对对象

  简单理解面向对象

  面对对象我们首先要知道什么是什么对象(不是处对象哦),对象是一个具体的实体,例如:某一个人就是一个对象,他有具体的属性,他有一个大鼻子或者是小鼻子,他长的帅或者不帅,而他具有的特征就是他自身的属性,而他却属于人这个类里的一个实例。

  面向对象的思想

  作为面向对象的思维来说,当你拿到一个问题时,你分析这个问题不再是第一步先做什么,第二步再做什么,这是面向过程的思维,你应该分析这个问题里面有哪些类和对象,这是第一点,然后再分析这些类和对象应该具有哪些属性和方法。这是第二点。最后分析类和类之间具体有什么关系,这是第三点。

面向对象有一个非常重要的设计思维:合适的方法应该出现在合适的类里面

  简单理解

  简单来说,人民币和美元以及欧元都是属于‘钱‘这个类,而人民币与美元都是‘钱‘这个类的的一个实例也就是对象,它们继承‘钱‘同时具有‘钱‘这个类拥有的的功能-->购买东西。可以说‘钱‘是人民币以及欧元等抽象出的一个类。

  java是面对对象的程序设计语言,java语言的提供了定义类,成员变量,方法等最基本的功能。

  java也支持面向对象的三大特征:封装、继承、多态(其实应该还有个接口)。

/**
 *创建一个类
 *创建一个类的语法:
 * [修饰符] class 类名
 * 如下:
 */
public class ClassTest {
}

  修饰符可以是public、final、abstract,或者完全省略这三个修饰符,类名只要是一个合法标示符即可,对一个类的定义而言,可以包括三种最常见的成员:构造器,成员变量和方法(构造器也被称为构造方法),三种成员都可以定义零个或者多个。

  java中的访问修饰符

  

  对象的定义:

/**
 *创建一个类
 *创建一个类的语法:
 * [修饰符] class 类名
 * 如下:
 */
public class ClassTest {
     //***************变量*******************
     //定义一个成员变量
     //public private protected 三种修饰符只能出现一个
     //也可以用final 与 static 去修饰
     private Integer num = 1;//修饰符 类型 成员变量名 赋值 1
     public static final Integer SYSTEM_CODE = 10010;

     //***************方法*******************
     //定义一个无返回值类型的带参方法
     //修饰符为public 返回值void(无) 方法名add 行参为userName
     public void add(String userName){    System.out.println("我是--->"+userName);   }
     //定义一个静态的无返回类型的名为update的方法
     public static void update(){}
     //定义一个修饰符为protected 返回值为 String类型的名为findData的方法
     protected String findData(){
         return "我是返回数据!";
     }

    //***************构造器*******************
     //创建一个无参构造器
     public ClassTest(){}
     //创建一个参数类型为integer的构造器
     public ClassTest(Integer num){     //这里的this 指代的是本类,也就是ClassTest的引用
         this.num = num;
     }

}

  对象的产生和使用

  调用方法或者成员变量语法是 : 对象.方法()/对象.变量

      //创建对象的关键字为new
         //对象创建的引用可以是自己也可以是父类
         //第一个是一个无参构造
         ClassTest c1 = new ClassTest();
         //第二个是带参的构造方法
         ClassTest c2 = new ClassTest(1000);

         //创建对象后根据权限修饰符可以调用想用的成员变量 和 方法
         System.out.println(c1.findData());//打印 “我是返回数据!”
         System.out.println(ClassTest.SYSTEM_CODE);//调用静态成员变量     c2.add("张三");//这里打印   我是----->张三
         //我们也可以自己写一个类  自己去摸索下权限修饰符,以及构造器与创建对象实例的关系、以及行参的使用,

  

  面对对象的优点:

    1.与人类的思维习惯一致

    2.隐藏信息,提高了程序的可维护性和安全性

    3.提高了程序的可重用性(这个很重要哦,在面向对象的代码中代码的复用可是很关键的)

  使用类的关键步骤:

    1.定义类:使用关键字class

    2.创建类的对象:使用关键字new、

    3.使用类的属性和方法:使用 " . "操作符

原文地址:https://www.cnblogs.com/Cgosling/p/9880046.html

时间: 2024-11-04 02:16:56

从零开始学java (面向对象)的相关文章

如何从零开始学Java编程

Java语言的学习开始,很多同学不知道从哪入手?如果你也想知道如何从零开始学Java?怎样学Java最有效? 虽然Java面象对象很多东西都是被封装好的直接用,相对其他语言没那么复杂,但是学的东西也没有那么的so easy,总之如果你是真想做开发,就先沉下心用心把基础打好,不要先老想着因为软件行业有市场,所以要进来分一杯羹的这种急躁心态. 另外,在编程这个行业,技术更新速度快,所以一定要具备相应的自学能力及自学意识,不然即使现在入职了Java相关的工作,不主动学习的话,说不定几年后你就跟不上技术

从零开始学java之出入门卫管理系统(三)

  这个系统包含了四块,第一块就是人员管理,经理分配三位分别有"ABC"权限的人,分别管理请假申请,请假审批,门卫登记管理.同时不属于本公司的内部人员,如别的公司的人员如果想到本公司访问,也是先通过这"ABC"权限的三个人代为写来访申请,来访审批,来访门卫登记管理.     具体步骤如下:     因为后面都会用到很多相同的方法,和相同的属性,所以我先建立了两个接口让后面的方法类和属性类都实现这两个接口,这样就降低了耦合度.     从零开始学Java之出入门卫管理

从零开始学Java之出入门卫管理(二)

    这个系统包含了四块,第一块就是人员管理,经理分配三位分别有"ABC"权限的人,分别管理请假申请,请假审批,门卫登记管理.同时不属于本公司的内部人员,如别的公司的人员如果想到本公司访问,也是先通过这"ABC"权限的三个人代为写来访申请,来访审批,来访门卫登记管理.     具体步骤如下:     因为后面都会用到很多相同的方法,和相同的属性,所以我先建立了两个接口让后面的方法类和属性类都实现这两个接口,这样就降低了耦合度.     从零开始学Java之出入门卫

从零开始学JAVA(08)-使用SpringMVC4 Restful 风格引用静态文件 css/js/png

在写完helloworld后想给网页加点样式(*.css),结果怎么也显示不了,百度了很多种方法后试行尝试,试验成功并记录下来,方便以后查看. 时隔两年,继续学习JAVA,太久没学了,忘记得差不多,还好以前写的helloworld,还能用. 一.关于开发环境 eclipse-jee-neon-1a-win32 Jdk 1.8u112 (32位版本) SpringMVC 4.3.4.RELEASE apache-tomcat-8.5.8 二.helloworld.jsp文件中的引用的样式表为 st

一起学 Java 面向对象(二)

一.方法函数 函数也称为方法,就是定义在类中的具有特定功能的一段独立代码.用于定义功能,提高代码的复用性. 函数的特点1> 定义函数可以将功能代码进行封装,便于对该功能进行复用:2> 函数只有被调用才会被执行:3> 对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写,系统会帮你自动加上:4> 函数中只能调用函数,不可以在函数内部定义函数. 修饰符 返回值类型 方法名(参数类型 形式参数1,参数类型 形式参数2,..

从零开始学JAVA(09)-使用SpringMVC4 + Mybatis + MySql 例子(注解方式开发)

项目需要,继续学习springmvc,这里加入Mybatis对数据库的访问,并写下一个简单的例子便于以后学习,希望对看的人有帮助.上一篇被移出博客主页,这一篇努力排版整齐,更原创,希望不要再被移出主页了. 原创文章,后面附上源码,转载请注明出处http://www.cnblogs.com/lin557/p/6179618.html 一.运行环境 Eclipse Neon.1a Release (4.6.1) 官网下载 mysql-5.7.16-winx64(http://cdn.mysql.co

从零开始学java(二)类与对象

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为. 类是对象的抽象,对象是类的具体实例. 1.构造一个类,让其拥有属性和方法 public class Employee { //属性,私有化属性,并提供方法让其能够通过方法访问 private String name; private int age; private double salary; private static final int NUMBER=217;

从零开始学JAVA(06)-WebService_Jersey_Restful

由于项目上需要写一个简单的评价系统,像银行MM前面的那种非常满意.满意.不满意那种,结合一个安卓的APP一起使用.由于使用3G网页通讯,个人认为http这种方式更合适.曾经听在Delphi鸟窝群的白雪公猪大神讲过,我们这种情况下的APP应用在移动网络下使用长连接通讯不是很合适,一方面是稳定性,另一方面是流量.所以决定写一个WebService,给app提供服务.本文Eclipse+Tomcat+ 以下菜鸟见解. 一.技术选型:刚学的java,所以百度了一通后,发现网上有很多写WebService

从零开始学Java之IO字符流懒人模式(自动生成属性类,方法类,界面类)

平时做一个项目都要建很多的属性类,方法类和View类,学了IO流之后想了一种办法,就是自己写一串代码,然后在文本文档里写class <类名>加上所有的属性,然后运行一下代码就自动生成了一个  <类名>.java   文件.用myeclipse打开就可以了.同样的道理,你写一个只有   class <类名> 的txt文本文档  点一下另一段代码就自动生成了一个方法类,里面带有增删改查四个简单方法的方法类,还有一个View类. 首先说一下,生成属性类的这段代码: packa