关于类与对象的理解与初步应用(以Java为例)
1.面向过程和面向对象
面向过程
面向过程顾名思义就是把问题分为若干个步骤来解决,例如c语言就是经典的面向过程的编程语言,它的主体是函数。每个函数对应着一个解决步骤,问题便是由一个个的函数依次调用而解决的。
面向对象
面向对象和面向过程有很大的不同。如果说面向过程是纵向地依次解决问题,那么面向对象则是横向地把问题分解成一个个对象,通过表述每个对象在问题中的行为和状态来解决问题。
2.类与对象的关系
类是对象的抽象化,我们把属性类型和方法类型相同的对象总和成一个类。
对象是类的实例化,定义归属于某一类的新的对象,然后通过操作这个对象来具体化类的属性和实现类的方法,从而进行之后的一系列步骤。
3.类
Java中的类
Java中类又叫“class”,格式一般为:
public class 类名 { }
类的创建
在左栏的包(package)下创建一个新的class
然后输入文件名,eclipse会自动帮我们写好类的格式。注意:类名要与文件名相同,否则执行不了。
类的属性
格式:修饰符 属性类型 属性名();
例如:
private String name;
类的方法
格式:public 方法返回值类型 方法名(参数类型 参数名,……){
方法体,方法需要执行的内容
}
例如:
public void HelloWorld(){
System.out.println("Hello world!");
}
4.Java中的对象
对象的创建
格式:类名 对象名=new 类名();
例如
Student st1=new Student();
对象的属性
格式:对象名.属性名
例如:
st1.name="张三";
对象的方法
格式:对象名.方法名(参数值……);
例如:
a.HelloWorld();
5.示例代码
这里我写了一段模仿王者荣耀中路英雄对线的简单代码,也算是类与对象的基础应用。
public class hero{
/**
*@author zoeZiYu
*/
public String name;
public int blood;
public void attack(skill c,hero a){
a.blood-=c.blood;
System.out.println(name+"对"+a.name+"发动技能"+c.name+"造成伤害:"+c.blood+name+"剩余血量:"+blood+a.name+"剩余血量:"+a.blood);
if(a.blood<=0){
System.out.println(name+"击败了"+a.name);
System.exit(0);
}
}
}
public class skill{
/**
*@author zoeZiYu
*/
public String name;
public int blood;
}
public class main{
public static void main(String[] args){
hero dc=new hero();
dc.blood=3000;
dc.name="貂蝉";
hero zg=new hero();
zg.blood=3500;
zg.name="诸葛亮";
skill attack1=new skill();
attack1.name="老娘的舞姿";
attack1.blood=765;
skill attack2=new skill();
attack2.name="运筹帷幄";
attack2.blood=589;
while(dc.blood>0||zg.blood>0)
{
dc.attack(attack1,zg);
zg.attack(attack2,dc);
}
}
}
最终结果:
6.结束语
这篇blog到这里就讲完了,第一次写难免会有纰漏,若是各位发现有错误欢迎留言指正!
我是zoe梓渝,目前是一个刚入门的learner,我的个人博客将会长期更新,希望大家能关注我,大家共同进步!