A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 641113495 中级黑马   /  2015-9-14 21:27  /  193 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Summarize {        // Summarize 总结
public static void main(String[] args) {
  Student s1 = new Student();
  s1.show();
  Student s2 = new Student("张三",25);
  s2.show();
  s2.setName("李四");
  s2.setAge(24);
  s2.show();
}
}
class Student {
private String name;      //成员变量,且被private私有化了
private int age;
public Student() {       //空参构造
}
public Student(String name,int age) {  //有参构造
  this.name = name;
  this.age = age;
}
public void setName(String name) {   //设置姓名:这就能在本类之外给name赋值了
  this.name = name;
}
public String getName() {       //获取姓名:只是起到一个桥梁的作用
  return name;
}
public void setAge(int age) {
  this.age = age;
}
public int getAge() {
  return age;
}
public void show() {
  System.out.println("姓名:" + name + ",  年龄" + age);
}
}
/*
写一个学生类
成员变量:名字name,年龄age
空参构造和有参构造
show方法,输出一段话
*/
/*
构造方法的作用是给对象的数据(成员变量)进行初始化;
格式:无参构造:修饰符 类名(){}   
  有参构造:修饰符 类名(参数类表){}
构造方法既然是方法那么它也可以重载:
重载的要求也和方法的一样,就是方法名相同,参数列表不同(参数个数不同,类型不同,顺序不同),与返回值无关.
而构造方法是没有返回值的
构造方法分为无参构造和有参构造,无参构造是在创建对象的时候给对象的数据一个默认初始化值,而有参构造是在创
  建对象的时候给对象数据赋值;在类中如果没有定义构造方法的话,系统会默认给出一个无参构造(当然它是
  看不到的啦),而如果在类中定义了一个构造方法的话,创建对象的时候就必须按照构造方法的参数类型来创建.

创建一个对象的步骤:
* Student s = new Student();
* 1,Student.class加载进内存
* 2,声明一个Student类型引用s
* 3,在堆内存创建对象,
* 4,给对象中属性默认初始化值
* 5,属性进行显示初始化
* 6,构造方法进栈,对对象中的属性赋值,构造方法弹栈
* 7,将对象的地址值赋值给s
private的作用是与public相对立的
private是私有的而public是公有的
被private修饰过的成员变量和成员方法只能在本类中使用
(在上面的例子中,String name和int age原本是公开的,是可以在main方法中直接赋值调用的,但被private私有化
之后就不可以了,只能在本类中被赋值调用,因此就要用到被public修饰的setXxx方法去给成员变量赋值,但是被
赋值之后它还是不能在本类之外被调用的,因此就要用到被public修饰的getXXX方法去获取成员变量的值)
this是指哪个对象调用的方法,就指的是哪个对象中的成员
*/

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马