以Point类为基础,定义一个平面中的Circle类: 1、编写一个无参的构造函数; 2、编写一个有参的构造函数; 3、在主函数中调用无参的构造函数生成圆的实例c1,调用有参的构造函数生成圆的实例c2

本文介绍了一个简单的Java程序,该程序定义了一个圆形类Circle,包括无参数和有参数的构造方法,用于设置圆的位置和半径。通过两个实例演示了如何创建圆形对象并比较它们是否重合。
public class Circle {
   int x; //x的坐标
   int y;//y的坐标
   int r;//定义半径r
   Circle(){
	   x=2;
	   y=2;  //无参构造方法 
	   r=1;   
   }
   Circle(int xx,int yy,int rr){
	   x=xx;
	   y=yy;//有参构造方法
	   r=rr;
   }
   public void point(){
	   System.out.print("当前圆的位置:("+x+", "+y+")"+"圆的半径为:"+r+"\n");
   }
   public void compare(Circle c1){
	  if((x==c1.x)&&(y==c1.y)&&(r==c1.r)) {
		   System.out.print("两圆重合");
		   
	   }
	   System.out.print("两圆不重合");
   }
}



public class TestCircle {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Circle c1=new Circle(); //为C1分配变量(使用new和类中无参构造方法)
		Circle c2=new Circle(2,1,3);//为C2分配变量(使用new和类中有参构造方法)
		c1.point();
		c2.point();
		c1.compare(c2);
	    
			
		
	}
	}
   

    输出结果为:


   
### C++ 中带有 X Y 坐标Point 构造函数实现 在 C++ 中定义一个 `Point` 来表示二维平面上的一个点,可以使用两个私有成员变量分别存储 x y 的坐标值。为了初始化这些成员变量,在内部提供相应的构造函数。 #### 定义 Point 及其构造函数 ```cpp #include <iostream> namespace Geometry { class Point { private: double m_x; double m_y; public: // 默认构造函数 Point() : m_x(0), m_y(0) {} // 单构造函数用于转换 explicit Point(double x) : m_x(x), m_y(0) {} // 双构造函数 Point(double x, double y) : m_x(x), m_y(y) {} void print() const { std::cout << "(" << m_x << ", " << m_y << ")" << std::endl; } }; } ``` 上述代码展示了如何声明并定义一个名为 `Geometry::Point` 的[^1]。此版本不仅包含了单构造函数(允许隐式型转换),还提供了双构造函数以便更灵活地创建对象实例[^3]。注意这里使用了 `explicit` 关键字修饰单构造函数以防止不必要的隐式型转换发生。 对于输入输出操作优化方面可考标准库中的同步设置方法[^2]: ```cpp int main(){ std::ios::sync_with_stdio(false); Geometry::Point p1; // 使用默认构造函数 Geometry::Point p2(5.0); // 使用单构造函数 Geometry::Point p3(3.0, 4.0);// 使用双构造函数 p1.print(); p2.print(); p3.print(); return 0; } ``` 这段程序片段说明了不同方式下 `Point` 对象的创建过程以及通过成员函数打印其位置信息的方法。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值