当你要生成一个对象时,我们会用一个关键字new
A a = new A() A a = new A("Hello")这里会有两个生成对象的方式,前者只是单单生成一个对象,后者生成对象时传递一个String类型的变量给对象做一些初始化。比如:
public class Person {
private int age
private String name
public Person(){}
public Person(String name,int age){
this.name = name
this.age = age
}
public void say(){
}
}
Person p = new Person()只是单单生成一个对象,并不知道name和age
Person p = new Person("jack",20)生成一个初始化的name与age的对象。
方法不多做解析,比如p.say()//一个行为,人会说话
类的定义:
public class Test {//类的访问修饰符可以是public,默认(就是没有),
//abstract,final,class是定义类的关键字
方法的定义:
//方法的定义:
/**
* [访问修饰符] [static] [是否有返回值类型] 方法名(参数列表){
* [方法执行体]
* [return返回值]
* }
*/
public void getName(){
}
//静态方法
public static void main(String[] args) {
}
}
其实没有区别~面向过程的语言~一般叫函数~比如C~大家都说函数~没人说方法……因为面向过程的一个模块他更强调的是数据的处理~就像函数一样~
而面向对象的语言比如 c++ java c#(c++同时支持面向对象和面向过程)
一般把类的里的函数叫方法或者服务或操作~它主要强调这个类的对象封装了一些属性和方法(变量和函数)并向外提供服务。一个对象应该具有一些服务~为其他对象服务~也就是面向对象中两个对象间发消息…… 你在b的对象里做a.sort() 就是b向a发一条消息~让a进行排序~a只将sort()这个接口暴露给b,为b提供了排序这个功能,其他细节做了封装,这就是面向对象的开闭原则……慢慢体会吧……还是说服务感觉恰当些……