java类与对象
1.介绍
1.什么是类
类是对一类事物的抽象描述 如颜色 大小 姓名 个数;
2. 什么是对象
对象是一个类中准确的的目标:例如 一个红色的苹果,一个姓名为安安身高162cm的男孩
3.对类的描述(属性 和 行为)
属性(成员变量):属性一般都使用 名词来修饰
行为(成员方法):行为一般用动词来修饰
2.书写与创建
1.如何写一个类(使用class修饰),类里面都有什么?
class Animal{
String name = "旺财";
int age = 2;
String gender = "公";
public void sayHi() {
System.out.println("姓名:" + name);
System.out.println("年龄:" + age);
System.out.println("性别:" + gender);
}
public void sleep() {
System.out.println(name + "在睡觉");
}
public void eat() {
System.out.println(name + "在吃");
}
}
在以上代码中可发现
类里面有成员变量,成员方法
* 成员变量(实例变量)写在类中 方法外
* 成员方法(实例方法)写在类中
2.如何创建一个对象
2.1类名 对象名 = 初值(new 类名());
2.2对象创建在堆内存(堆内存有默认的初始值)
public static void main(String[] args) {
Animal dog = new Animal();
dog.name = "来福";
String ss = dog.name;
dog.sayHi();
dog.eat();
}
}
3.成员变量和局部变量的区别
public void sayHi(int i/*局部变量*/) {
int num;
System.out.println("我是" + name);
System.out.println("我会" + name);
}
1.书写位置
成员变量:类中 方法外
局部变量:方法中 方法声明上
2.内存中的位置
成员变量:堆
局部变量:栈
3.初值
成员变量:有默认值
局部变量:没有默认值 如果要使用的话必须要给初值
4.声明周期
成员变量:随着对象的创建而创建随着对象的销毁而销毁
局部变量:随着方法存在
4.匿名对象
1.介绍: 没有名字的对象
1.如果你只调用方法的话 这是可以使用匿名对象(测试的时候会用)
2.匿名对象可以当参数进行传递
3.好处:当参数时 代码简单
弊端:无法直接修改里面的值
4.1简单的代码解析:
public class Demo03 {
public static void main(String[] args) {
new Person().sayHi();
}
}
class Person{
成员变量
String name = "wjn";
int age = 16;
成员方法
public void sayHi(){
System.out.println(name + "是" + age);
}
}
5.面向对象的特征
面向对象的特征
1.继承
3.封装
2.多态
封装:将类中的属性或者方法对外界藏 然后开发公共的访问方式
成员变量私有化是封装的一种体现
private 私有(权限修饰符)
private 私有(权限修饰符)
java bean实体规范
1.成员变量私有化(并且提供set/get方法)
5.1代码解析
public class Demo04 {
public static void main(String[] args) {
Student student = new Student();
student .setName("回事");
student.setAge(21);
System.out.println(student.getAge());
student.sayHi();
}
}
class Student{
private String name;
private int age;
public String fun() {
return name;
}
public void setName(String name) {
this.name = name;
this.sayHi();
}
public int getAge() {
return this.age;
}
public void setAge(int age) {
this.age = age;
}
public void sayHi() {
System.out.println(name + " 是" + this.age );
}
}