面向对像(上)

1.1、面向过程和面向对象的编程思想

面向过程的编程思想:

以流程为为单位,注重功能的实现

存在的问题:

流程之间相互依赖,导致代码之间的耦合性非常高不利于程序的维护和后期功能的扩展

面向对象的编程思想:

面向对象是建立在面向过程的基础之上,也就是说在面向对象的编程中一定会用到面向过程的编程思想。

面向对象就是把任何一个事物看作是一个整体,从事物的特征(属性)和行为(方法、功能)两个方面进行描述。

面向对象特点:

能够以更加贴合实际情况或者正常的思维方式,来去理解一个事物或者软件的功能

面向对象是来源于生活服务于生活

面向对象的编程英文简称--OOP

面向对象的四大或者三大特征:抽象(可选)、封装、继承、多态

1.2、对象

1.2.1 什么是对象

对象:具体存在的一个事物就是一个对象,万事万物,皆对象

特点:无论两个事物有多么的相近或者相似,永远都是两个不同的对象一项法律、法规、规章制度、政策都是一个对象

1.3、抽象

把同一类事物,它们共同的特征(属性)和行为(方法)进行抽取、归纳、总结。

1.4、封装

意义和目的:就是包装的意思,为了保证抽象出来数据的安全性

封装包括对属性和方法的封装,而且同一类事物要把它们的属性和方法封装到一起,这才是一个完整的封装。

封装不是绝对的,如果需要访问封装起来的属性和方法,就必须通过指定的公共入口(方法、接口)。

1.5 、类(Class)

在Java中,类中存放的就是抽象出来的属性和方法。

[访问修饰符] class 类名{ //属性 //方法}

   1.51数据类型的默认值:

整数类型的默认值是0

浮点类型的默认值是0.0

boolean类型的默认值是:false

char类型的默认值是空格

所有引用类型的默认值都是null

1.6、 对象的创建

要想使用类中的属性和方法,就必须创建一个当前类的对象,语法:类名 对象名=new 类名();

通过对象,调用属性和方法:语法:对象名.全局属性名、对象名.方法名(参数列表)

举例:

public class Demo1{

//成员属性、全局变量 

int num;

double money;

String name;

oolean flag;

char c;

public static void main(String[]args){

//创建对象

Demo1 demo1=new Demo1();

demo1.num=100;

demo1.money=99.66;

demo1.flag=true;

demo1.c='z';

System.out.println(demo1.num);

System.out.println(demo1.money);

System.out.println(demo1.name);

System.out.println(demo1.flag);

System.out.println(demo1.c);

             }

}

1.6.1 构造方法

构造方法:方法名和类名相同;没有void,也没有return;方法不能被static修饰。

                        类名 对象名=new 构造方法(参数列表);

      语法:           [访问修饰符] 类名(参数){}

1.6.2 构造方法的分类

当一个类中,不存在任何形式的构造方法时,那么JVM会提供一个默认的无参数的构造方法。

构造方法分为:

无参数的构造方法

隐式无参数的构造方法

显示无参数的构造方法

有参数的构造方法,在调用时,需要传递数据,而且数据要和构造方法中参数的类型,个数,顺序必须完全匹配。

构造方法中的参数,有被称为形式参数(形参),在调用这个构造方法时,传递的数据称为实际参数(实参)

在一个类中,可以同时拥有多个构造方法,只要构造方法之间的参数列表不同即可。

示例:

public class Demo2{

           public Demo2(){

                  System.out.println("------无参数的构造方法------");

}

               public Demo2(String name,int age){

                   System.out.println("------有参数的构造方法----- name="+name+", age="+age);

}

                public Demo2(int a,int b){

                     System.out.println("------有参数的构造方法----- a="+a+", b="+b);

}

                  public static void main(String[]args){

                    Demo2 demo2=new Demo2("zhangsan",20);  

        }

}

1.7、 方法

    定义语法:[访问修饰符] 返回值类型 方法名(参数列表){ //返回值 return 返回值;}

方法分类:

1:无返回值无参数的方法

[访问修饰符] void 方法名( ){  }    说明: void 表示当前方法不会返回数据给调用方

2:有返回值无参数的方法

[访问修饰符] 返回值类型 方法名(){  //代码  //返回值  return 值;}

说明:  返回值类型由返回值来决定的  带有返回值的方法的最后一句代码,一定是:return 返回值; 而且一次只能返回一个值。

3:无返回值有参数的方法

[访问修饰符] void 方法名(数据类型 参数1,数据类型 参数2,...){}

说明: 方法中的参数可以有多个,参数之间使用逗号分隔。 方法中的参数也称为形式参数(形参) 调用有参数的方法时,传递的数据称为实际参数(实参),在传递数据时,必须和目标方法中参数的个数,类型,顺序完全一致。

4:无返回值有参数的方法

[访问修饰符] 返回值类型 方法名(参数列表){ //最后一句代码 return 返回值;}

1.8、 代码执行的顺序

在JavaSE中,main方法是程序的入口,所有普通的方法,都要在main方法中被调用才有机会得到运行;普通方法运行完毕后,再回到Main方法,所以,程序从Main方法开始,也从Main方法结束。

1.9、this关键字

this关键字只能出现在没有被static修饰的方法中。

作用:this关键字表示对当前类某个对象的引用(哪个对象调用这个方法,this就指向谁)

用法:

当方法中的局部变量或者参数和成员(全局)变量完全一致时,以局部变量或者参数为主(就近原则);如果此时就想调用全局变量,则可以通过this关键字来解决,格式是:this.属性名。当this以this(参数列表)的形式,出现在构造方法的第一句代码时,就表示当前构造方法,调用了该类中其它的构造方法,可以通过this的参数列表来匹配。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值