概念:
万物皆对象
类与对象的关系:类是对象的抽象(类型),对象是类的实例
对象具有的两个特征:
属性:对象具有的特征(例如:姓名,性别)
方法:对象执行的操作(例如:吃,喝...)
对象:用来描述客观事物的一个实体,由一组属性和方法构成
长城是名声古迹
封装:将属性和方法封装到对象当中
好处:隐藏其内部细节,不展露外部细节
Java中类名的规范:
1.类的首字母大写
2.类名称不能使用Java关键字
3.除了"_"与"$"符号以外,不能包含其他字符
4.不要包含数字以及中文汉字
类是class的对象,所有的类都是Object的子类
Java是一门面向对象的语言
类的定义:
访问修饰符 class 类名{
访问修饰符 数据类型 属性名;
访问修饰符 方法返回值类型 方法名(){
}
}
类中属性和方法的调用:
使用对象名"."进行调用(确保已经创建对象)
例如:
Student stu=new Student();
stu.name="张三";
stu.showStudent();
package com.demo;
import java.util.Scanner;
public class Person {
public String name;
public int age;
/**
* 用来循环接收用户输入,然后判断年龄
*/
/**
* 如果类和属性还有方法不添加访问修饰符,那么默认是?
* 默认是public
*/
public void show(){
Scanner input=new Scanner(System.in);
System.out.println("请输入姓名:");
name=input.next();
//1.循环
while(!name.equals("n")){
System.out.println("请输入年龄:");
age=input.nextInt();
//2.判断
if(age>=18&&age<=60){
System.out.println("门票20元");
}else{
System.out.println("门票免费");
}
System.out.println("请输入姓名:");
name=input.next();
}
System.out.println("程序结束!");
}
}
package com.demo;
import java.util.Scanner;
public class PersonTest {
public static void main(String[] args) {
//创建一个Person类的对象
/**
* 类的实例化过程
*/
Person person=new Person();
person.show();
}
}
package com.demo;
/**
*
* public : 代表访问修饰符
* class : 类的标识
* Student : 类名
*
*/
public class Student {
//对象的两大特征:属性和方法
//类是用来定义和约束对象的属性和方法
/**
* 属性:对象所具有的特征
*/
//封装类型
String name; //姓名属性
char sex; //性别属性
int age; //年龄属性
/**
* 方法:对象所执行的操作
* 访问修饰符 方法返回值类型 方法名称(){}
* 方法名称首字母小写,其余后面单词首字母大写
* 帕斯卡:首字母大写 驼峰命名法:方法名称首字母小写,其余后面单词首字母大写
*/
/**
* protected:受保护的
* private:私有的
* public:公共的
*/
public void showStudent(){
System.out.println("进入了showStudent方法");
System.out.println("姓名:"+name+" 性别:"+sex+" 年龄:"+age);
}
/**
* 类中可以没有属性或者方法吗?或者两者都不存在么?
* 答:可以
* 一个类中,属性方法可以有多个嘛(main方法除外)?
* 可以,但是要保证每一个属性名和方法名称不能重复
*/
}
package com.demo;
public class StudentTest {
public static void main(String[] args) {
//用来创建类的对象,然后给属性赋值,调用方法
//stu就是Student类的一个对象
Student wangstu=new Student();
//怎么给属性赋值
wangstu.name="王洪涛";
wangstu.age=18;
wangstu.sex='女';
//怎么调用方法
wangstu.showStudent();
}
}