面向对象概述
根据面向对象的思路,由c语言形成了c++,由c++产生了java这门面向对象的语言。
在面向对象设计产生之前,基本上采用的是面向过程的,面向过程的操作是以程序的基本功能实现为主,实现之后就完成了,也不考虑修改的可能性,面向对象,更多的是要进行子模块化的设计,每一个模块都需要单独存在,并且可以被重复利用,所以,面向对象的开发更像是一个具备标准的开发模式。
在面向对象定义之中,也规定了一些基本的特征:
(1)封装:保护内部的操作不被破坏;
(2)继承:在原本的基础之上继续进行扩充;
(3)多态:在一个指定的范围之内进行概念的转换。
/*权限修饰符 class 类名{
属性(变量);
行为(方法)
}
*/
//e.g.1
public class Pet{
String name;
int age;
boolean sex;
void eat(){
System.out.println("pet is eating...")
}
}
上面给出了创建一个Java类的实例,权限修饰符可以省略,默认为default,此外还有public,private,protected
本篇暂不介绍
类定义之后,无法直接调用,如果要使用,必须依靠对象,下面给出实例化对象的两种形式
//第一种
类名称 对象名称 = new 类名称();
Pet pet = new Pet();
//第二种
类名称 对象名称 = null ;
对象名称 = new 类名称 () ;
Pet pet = null;
pet = new Pet();
注意类属于引用数据类型
引用数据类型与基本数据类型最大的不同在于:引用数据类型需要内存的分配和使用。所以,关键字new的主要功能就是分配内存空间,也就是说,只要使用引用数据类型,就要使用关键字new来分配内存空间。
当一个实例化对象产生之后,可以按照如下的方式进行类的操作:
对象.属性:表示调用类之中的属性;
对象.方法():表示调用类之中的方法。
package com.abcoot
public class Pet{
String name;
int age;
boolean sex;
void eat(){
System.out.println(name + " is eating...")
}
}
public class Demo{
public static void main (String[] args){
Pet pet = new Pet();
pet.name = "旺财";
pet.age = 2;
pet.eat();
}
}
运行结果
旺财 is eating...
继承便是一个子类可以继承父类的方法与成员变量
public class Dog extends Pet{
}
//Dog 类继承了Pet类的成员变量与方法。
…未完(作者也是一个学习java没多久的人,希望大家一起进步)