类与对象的基本语法+练习题
1、类和对象的概念、类和对象的关系。
对象:现实世界中客观存在的物体都是对象,具有属性和方法,属性描述对象的特征,方法述 对象的行为。
类:具有相同属性和方法的多个对象的集合。
类是对对象的抽象,对象是类的具体。
类是创建对象的模板。
2、定义属性的语法。
访问权限修饰符 属性类型(数据类型) 属性名(变量名);
3、定义方法的语法。
访问权限修饰符 返回值类型 方法名(参数列表){方法体}
4、创建对象的语法。
类名 对象名 = new 类名();
5、给对象属性赋值、对象调用方法的语法
对象名.属性名 = 数据;
对象名.方法名();
练习题:
01:写一个人的类
属性:名字,性别,年龄
方法:(1)自我介绍的方法(2)吃饭的方法
创建一个对象“张三”
package cn.bdqn.demo04;
public class Person {
/*
写一个人的类
属性:名字,性别,年龄
方法:(1)自我介绍的方法(2)吃饭的方法
创建一个对象“张三”
*/
//创建属性
String name="张三";
int age=18;
String sex="男";
//自我介绍的方法:
public static void selfintroduction(String name,int age,String sex){
System.out.println(name+sex+",他今年"+age+"岁了");
}
//吃饭的方法:
public static void eat(String bigdrumstick){
System.out.println("他今天吃了"+bigdrumstick);
}
public static void main(String[] args) {
Person p=new Person();
p.selfintroduction("张三",10,"男");
p.eat("大鸡腿");
}
}
写一个汽车类:
属性:品牌;车长;颜色;价格;
方法:跑的方法
创建五个对象:“捷达”,“宝马”,“劳斯莱斯”,“科鲁兹”,“迈锐宝”
package cn.bdqn.demo04;
public class Car {
// 写一个汽车类:
// 属性:品牌;车长;颜色;价格;
// 方法:跑的方法
// 创建五个对象:“捷达”,“宝马”,“劳斯莱斯”,“科鲁兹”,“迈锐宝”
//创建属性
String brand; //品牌
double Length;//车长
String color;//颜色
double price;//价格
public Car(String brand,double Length,String color,double price){
this.brand = brand;
this.Length = Length;
this.color = color;
this.price = price;
}
public void run(){
System.out.println("一辆"+brand+"在路上跑"+"(车长:3237613164"+Length+";颜色:"+color+";价格:"+price+")");
}
public static void main(String[] args){
Car j = new Car("捷达",5,"红色",50000);
Car b = new Car("宝马",5,"红色",800000);
Car l = new Car("劳斯莱斯",5,"黑色",2000000);
Car k = new Car("科鲁兹",5,"红色",200000);
Car m = new Car("迈锐宝",5,"白色",100000);
j.run();
b.run();
l.run();
k.run();
m.run();
}
}
:写一个课程类:
属性:课程名;学时;任课老师;
创建五个对象:“c语言”,“Java编程”,“php网络编程”,“c++”,“数据结构”
package cn.bdqn.demo04;
public class Course {
/*
* 写一个课程类:
* 属性:课程名;学时;任课老师;
* 创建五个对象:“c语言”,“Java编程”,“php网络编程”,“c++”,“数据结构”
*
*/
//创建属性
String curriculum; //课程名
double period;//学时
String name;//任课老师
public static void couraSe(String curriculum,double period,String name){
System.out.println(name+"一周有"+curriculum+"上"+period+"课时");
}
//创建五个对象
public static void main(String[] args){
Course r = new Course();
r.couraSe("数据结构",4,"张老师");
r.couraSe("Java编程",6,"王老师");
r.couraSe("php网络编程",5,"汪老师");
r.couraSe("c++",7,"胡老师");
r.couraSe("c语言",3,"李老师");
}
}
0——————>X
|
|
| P(X,Y)
|
|
Y
定义一个类,用于描述坐标点
- 具有计算当前点到原点距离的功能
- 求到任意一点(m,n)的距离
- 具有坐标点显示功能,显示格式(x,y)
package cn.bdqn.demo04;
public class Coordinate {
/*
0——————>X
|
|
| P(X,Y)
|
|
Y
定义一个类,用于描述坐标点
(1)具有计算当前点到原点距离的功能
(2)求到任意一点(m,n)的距离
(3)具有坐标点显示功能,显示格式(x,y)
*/
//创建属性
double x;
double y;
double m;
double n;
//定义方法
public double distance1(double x,double y){
double distance1 = Math.sqrt(x*x+y*y);
return distance1;
}
public double distance2(double m,double n,double x,double y){
double distance2 = Math.sqrt((x-m)*(x-m)+(y-n)*(y-n));
return distance2;
}
//创建对象
public static void main(String[] args) {
Coordinate s = new Coordinate();
double a = s.distance1(2,3);
double b = s.distance2(3,4,5,6);
System.out.println("点到原点距离:"+a+"\n"+"任意一点(m,n)到(x,y)的距离:"+b);
}
}
05:定义一个圆类型
提供显示圆周长功能的方法
提供显示圆面积的方法
package cn.bdqn.demo04;
public class Circle {
/*
* 定义一个圆类型
* 提供显示圆周长功能的方法
* 提供显示圆面积的方法
*/
//创建属性
double perimter;
double area;
double radius;
//定义提供显示圆周长功能的方法,定义提供显示圆面积的方法
public double perimeter(){
perimter = 2 * radius * 3.14;
return perimter;
}
public double area(){
area = radius * radius *3.14;
return area;
}
//创建对象
public static void main(String[] args){
Circle myCircle = new Circle();
myCircle.radius = 5.0;
double C = myCircle.perimeter();//
double S = myCircle.area();//
System.out.println("圆的周长为="+C+"\n"+"圆的面积为="+S);
}
}
06:编程创建一个Box类,在其中定义三个变量表示一个立方体的长、宽和高,定义一个方法求立方体的体积。创建一个对象,求给定尺寸的立方体的体积。
package cn.bdqn.demo04;
public class Box {
/*
*编程创建一个Box类,在其中定义三个变量表示一个立方体的长、
*宽和高,定义一个方法求立方体的体积。
*创建一个对象,求给定尺寸的立方体的体积。
*/
//创建属性
int length;//长
int wide; //宽
int tall; //高
double volume;//体积
//定义方法
public double volume(int length,int wide,int tall){
volume=length*wide*tall;
return volume;
}
//创建对象
public static void main(String[] args) {
Box volumes = new Box();
double V=volumes.volume(5,6,37);
System.out.println("该立方体积为:"+V);
}
}
07:定义一个计算机类:
属性:品牌;价格;颜色;
方法:(1)编程的功能 (2)上网的功能
实例化两个对象:“lenovo”;“hasee”
package cn.bdqn.demo04;
public class Computer {
/*
* 定义一个计算机类:
*属性:品牌;价格;颜色;
*方法:(1)编程的功能 (2)上网的功能
*实例化两个对象:“lenovo”;“hasee”
*/
//创建属性
String brand;//品牌
int price;//价格
String color;//颜色
//定义方法:(1)编程的功能 (2)上网的功能
//定义电脑的功能
public void proGram(String brand,int price,String color){
System.out.println("我是一个"+color+brand+"品牌的电脑,我的价格是:"+price+"元"+"我具有编程的功能");
}
public void sInternet(String brand,int price,String color){
System.out.println("我是一个"+color+brand+"品牌的电脑,我的价格是:"+price+"元"+"我具有上网的功能");
}
//创建对象
public static void main(String[] args) {
Computer lenovo = new Computer();
lenovo.proGram("lenovo",96999999,"蓝黑色");
lenovo.sInternet("lenovo",98999999,"红白色");
Computer hasee = new Computer();
hasee.proGram("hasee",96999999,"蓝黑色");
hasee.sInternet("hasee",98999999,"红白色");
}
}
08:编写一个类Student,代表学员,要求:
(1)具有属性:学号、姓名、年龄、性别、专业。
(2)具有方法:自我介绍,负责输出该学员的姓名、年龄、性别以及专业。
package cn.bdqn.demo04;
public class Student {
/*
* 编写一个类Student,代表学员,要求:
* (1)具有属性:学号、姓名、年龄、性别、专业。
* (2)具有方法:自我介绍,负责输出该学员的姓名、年龄、性别以及专业。
*/
//创建属性
String number;//学号
int age;//年龄
String name;//姓名
String sex;//性别
String major;//专业
//定义方法
public void selfIntroduction(String name,int age,String number,String sex,String major){
System.out.println("大家好!我叫"+name+"今年"+age+"岁了,性别:"+sex+"学号:"+number+"专业:"+major);
}
//创建对象
public static void main(String[] args) {
Student student = new Student();
student.selfIntroduction("大漂亮",18,"123456","女","Java后端");
}
}