基础JAVA程序设计(多个类与方法的实现2)
设计一个类代表二维空间的一个点(Point),要求:两个成员变量:x坐标和y坐标。
设计一个类代表二维空间的一个圆(Circle),要求:两个成员变量:一个是圆心,一个是半径;提供计算圆面积的方法;提供判断点是否在圆内的
方法。并设计测试类验证。
Point类
package yan05;
public class Point {
int x,y;
public Point(int x,int y) {
this.x=x;
this.y=y;
}
public Point() {
}
void p1() {
}
}
Circle类
package yan05;
public class Circle {
Point p0;
double radius;
public double getArea() {
return Math.PI*radius*radius;
}
public boolean isInCircle(Point p) {
if((p0.x-p.x)*(p0.x-p.x)+(p0.y-p.y)*(p0.y-p.y)>radius*radius) {
System.out.println("点不在圆内");
return false;
}
else {
System.out.println("点在圆内");
}
return true;
}
public Circle() { }
public Circle(Point p,double radius) {
p0=p;
this.radius=radius;
}
}
Test类
package yan05;
public class Test
{
public static void main(String[] args)
{
Point p0=new Point(0,0);//设置圆心坐标
Circle c0=new Circle(p0,5);//设置圆
Point p1=new Point(3,4);//任意选取一点
System.out.println("此圆的面积为:"+c0.getArea());//输出圆的面积
c0.isInCircle(p1);//判断p1点是否在c0圆内
}
}
运行结果:
此圆的面积为:78.53981633974483
点在圆内
基础JAVA程序设计(多个类与方法的实现2)的更多相关文章
- JVM源码分析之深入分析Object类finalize()方法的实现原理
原创申明:本文由公众号[猿灯塔]原创,转载请说明出处标注 “365篇原创计划”第十篇. 今天呢!灯塔君跟大家讲: 深入分析Object类finalize()方法的实现原理 finalize 如果 ...
- 基础JAVA程序设计 (多个类方法的实现)
模拟实现家庭购买电视.要求: (1) 电视类(TV)属性: channel : int , 1 代表CCTV-1,2代表CCTV-2-- 方法: 设置频道setChannel(int i) , 获取 ...
- JavaScript 类私有方法的实现
一:将私有方法移出模块,因为模块内部的所有方法都是对外可见的. class Widget { foo (baz) { bar.call(this, baz); } // ... } function ...
- Java程序设计8——抽象类、接口与内部类
1 抽象类 当编写一个类时,常常会为该类定义一些方法,这些方法用以描述该类的行为方式,那么这些方法都有具体的方法体.但在某些情况下,某个父类并不需要实现,因为它只需要当做一个模板,而具体的实现,可以由 ...
- Java反射——java.lang.Class和类的加载
反射的基础: java.lang.Class Class类的实例对象,用于记录类描述信息. 源码说:represent classes and interfaces in a running Java ...
- Java程序设计(2021春)——第三章类的重用笔记与思考
Java程序设计(2021春)--第三章类的重用笔记与思考 本章概览: 3.1 类的继承(概念与语法) 3.2 Object类(在Java继承最顶层的类) 3.3 终结类和终结方法(只能拿来用,不可以 ...
- Java基础语法<七> 对象与类
笔记整理 来源于<Java核心技术卷 I > <Java编程思想> 1. 类之间的关系 依赖 users– a 是一种最明显的.最常见的关系.如果一个类的方法操作另一个类的对象 ...
- 《JAVA程序设计与实例》记录与归纳--类与对象
类与对象 概念贴士: 1. 类必须先定义了才能使用.类是创建对象的模板,创建对象也叫类的实例化. 2. 在Java中,使用new关键字来创建对象,一般有一下3个步骤: 1)声 明:声明一个对象,包 ...
- Java基础学习笔记十二 类、抽象类、接口作为方法参数和返回值以及常用API
不同修饰符使用细节 常用来修饰类.方法.变量的修饰符 public 权限修饰符,公共访问, 类,方法,成员变量 protected 权限修饰符,受保护访问, 方法,成员变量 默认什么也不写 也是一种权 ...
随机推荐
- JAVA基础积累
1.ajax同步和异步的区别: 同步是指一个线程要等待上一个线程执行完才能开始执行,同步可以看做是一个单线程操作,只要客户端请求了,在服务器没有反馈信息之前是一个线程阻塞状态.异步是一个线程在执行中, ...
- JAVA生成(可执行)Jar包的全面详解说明 [打包][SpringBoot][Eclipse][IDEA][Maven][Gradle][分离][可执行]
辛苦所得,转载还请注明: https://www.cnblogs.com/applerosa/p/9739007.html 得空整理了关于java 开发中,所有打包方式的 一个操作方法, 有基于ID ...
- baiduMap & MapV 简单demo
看到 MapV 的一个demo 的底图比较好看,练练手 MapV demos:https://mapv.baidu.com/examples/ 参考的demo:https://mapv.baidu.c ...
- 解决 warning I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
只需要加载如下代码: import os os.environ['
- ajax php 验证注册用户名是否存在
1.在"test"数据库中,建立一张名为"user"的表. sql语句: create table `user`( `id` ) not null auto_i ...
- NAT(Network Address Translation)
一.概述 NAT英文全称是“Network Address Translation”,中文意思是“网络地址转换”,它是一个IETF(Internet Engineering Task Force, I ...
- 阿里云RDS数据库改造迁移方案
1. 改造原因 (1) 由于历史原因, 本应该是同一个库的表分布在两个数据库中,需要对这两个库进行合并. (2) 已有的数据库性能无法满足业务的增长需要, 查询卡,慢问题突出. (3) 当前自建Mys ...
- Apache2 httpd.conf配置文件中文版详解
Apache2 httpd.conf配置文件中文版详解## 基于 NCSA 服务的配置文件.##这是Apache服务器主要配置文件.#它包含服务器的影响服务器运行的配置指令.#参见以取得关于这些指令的 ...
- 使用PL/SQL能查询oracle中数据,在for update 语句中一直卡住
原因:在oracle中,执行了update或者insert语句后,都会要求commit,如果不commit却强制关闭连接,oracle就会将这条提交的记录锁住.下次就不能执行增删操作. 解决:1.查询 ...
- 在CentOS上安装Python3的三种方法
Centos7默认自带了Python2.7版本,但是因为项目需要使用Python3.x你可以按照此文的三个方法进行安装. 注:本文示例安装版本为Python3.5, 一.Python源代码编译安装 安 ...