栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

24 面向对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

24 面向对象

面向对象
  • 面向对象的概念(相对于面向过程而言)
  • 类和对象
    • 类
    • 对象
  • Java中如何定义类
  • Java中如何定义对象
    • 对象的属性赋值
    • 调用对象的方法
  • 课堂练习
    • 1 定义一个矩形,求矩形的面积和周长
    • 2 定义一个圆类(Circle),求圆的面积和周长
    • 3 定义一个三角形类(Strange),求三角形的周长和面积
    • 4 定义一个点类(point),求两点之间的距离
  • 作业

面向对象的概念(相对于面向过程而言)

什么是面向对象:分类的思想

类和对象 类

一个类型,把有相似特征或者行为的一些事物认为是一个类别,有助于认知世界,是一个抽象的概念,是人为了能够更好的理解,抽象出来的概念,并不存在

对象

类中一个真正的事物!是存在的一个真实案例(实例)

Java中如何定义类

使用关键字 class
访问修饰 [public private protected 默认 ] class 类名称 {
}

一般讲Java代码,写在一个Xxx.java 文件,这个文件就是一个类,如果这个文件中存在多个类,注意public只能修饰Xxx类,如果要在该文件中写main 函数,也只能写在这个类

Java中如何定义对象

类型 对象名称 = new 类型名称() 【构造方法】

对象的属性赋值

对象名称.属性名称 = 值;
如果访问属性的值(对象名称.属性名称)

调用对象的方法

对象名称.方法名称([参数列表]);

package com.openlab.code8.hw;

public class persion {
	// 属性
	String name;
	int age;
	// gender:true:女 false:男
	boolean gender;
	String email;
	String telphone;
	double height;
	float weight;
	//说话,动作行为,用函数来描述
	public void speak() {
		System.out.println("我的名字是:" + name + ",我今年" + age +"岁了");
	}
	public static void main(String[] args) {
		//创建对象
		persion p = new persion();
		//为对象进行属性赋值
		p.name = "lisi";
		p.age = 18;
		p.gender = true;//女
		p.email = "110@qq.com";
		p.telphone = "120";
		p.height = 140.5;
		p.weight = 98;
		//调用对象的方法
		p.speak();
		
		persion p2 = new persion();
		p2.name = "王麻醉";
		p2.age = 36;
		p2.speak();
	}

}

课堂练习 1 定义一个矩形,求矩形的面积和周长
package com.openlab.code8.hw;

public class React {
	public double length;
	public double width;
	// 求矩形的面积
	public double getArea() {
		return length*width;
	}
	//求矩形的周长
	public double getcal() {
	      return (length + width)*2;
	}
}

package com.openlab.code8.hw;

import java.util.Scanner;

public class Test {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入矩形的长:");
		double L = sc.nextDouble();
		System.out.print("请输入矩形的宽:");
		double W = sc.nextDouble();
		React r = new React();
		r.length = L;
		r.width = W;
		System.out.println("面积是:" + r.getArea());
		System.out.println("周长是:" + r.getcal());
		sc.close();
	}

}

2 定义一个圆类(Circle),求圆的面积和周长
package com.openlab.code8.hw;

import java.util.Scanner;

public class Circle {
	 double radius;
	 double getcal() {
		return 2*Math.PI*radius;
	}
	public double getarea() {
		return Math.PI*radius*radius;
	}
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入圆的半径:");
		double r = sc.nextDouble();
		Circle C = new Circle();
		C.radius = r;
		System.out.println("该圆的周长为:" + C.getcal());
		System.out.println("该圆的面积为:" + C.getarea());
		sc.close();
		
	}

}

3 定义一个三角形类(Strange),求三角形的周长和面积
package com.openlab.code8.hw;

import java.util.Scanner;

public class Strange {
	double a;
	double b;
	double c;
	public double getcal() {
		return a+b+c;
	}
	public double getareas() {
		double p = (a+b+c)/2;
		double s = Math.sqrt(p*(p-a)*(p-b)*(p-c));
		return s;
	}
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入三角形的三边:");
		double a = sc.nextDouble();
		double b = sc.nextDouble();
		double c = sc.nextDouble();
		sc.close();
		if(a+b>c&&b+c>a&&a+c>b) {
			System.out.println("能构成三角形哦");
		Strange S = new Strange();
		S.a = a;
		S.b = b;
		S.c = c;
		System.out.println("周长是:" + S.getcal());
		System.out.println("面积为:" + S.getareas());
		}else {
			System.out.println("不能构成三角形,请重新输入三边");
		}
		
	}

}

4 定义一个点类(point),求两点之间的距离
package com.openlab.code8.hw;

public class point {
	public int x;
	public int y;
	//求两点间的距离
	public double getDistance(point p2) {
		return Math.sqrt((x-p2.x)*(x-p2.x) + Math.pow((y-p2.y),2));
	}
	public static void main(String[] args) {
		point p1 = new point();
		p1.x = 3;
		p1.y = 5;
		
		point p2 = new point();
		p2.x = 8;
		p2.y = 4;
		
		System.out.println(p1.getDistance(p2));
		
	}

}

作业

定义一个Admin 类,该类存在 username 、password属性,实现一个控制台版的用户注册登入案例
将注册的用户写在一个数组中。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/930273.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号