题目如下:
实现一个类,描述二维平面的直线Line。
描述属性:私有属性
直线所通过的点:Point p;
直线的斜率:double m
实现方法:
直线的构建;
返回直线的两个属性;
返回直线在Y轴上的截距:yIntercept ;
判断两条直线是否相等;
显示直线的内容:y = mx + b;
isParallelTo(Line line2),判断本直线与直线line2是否平行;
isPeroendicularTo(Line line2),判断本直线与直线line2是否垂直;
translate(double dx, double dy),将直线向右移动dx单位,向上移动dy单位;
rarate(double ta),将直线沿逆时针方向旋转ta度;
旋转直线的斜率关系:
tan(a) +tan(ta)
tan(a + ta) = ---------------------
1 - tan(a)*tan(ta)
contains(Point p),判断点p是否在直线上;
这中间有个POINT ,难道类中还要有类?
哪位大虾来帮忙写一下啊?
------解决方案--------------------
类中当然可以有类 译本设定为静态私有类 private static class
这种类对外是不可用的(不论是不是private)对外没有外部连接 只限在声明及定义它的类内部使用 比较像像C++中的友元类(比如链表和链表的节点类耦合关系密切,就可以将节点类的所有成员私有化,然后再声明链表为它的友元,这样就不会出现用户在链表外再使用节点类,方便管理)
我是这么理解 对java还不是很熟悉 高手请指点
------解决方案--------------------
java.awt.Point
------解决方案--------------------
如果inner class 不是private的话 外部是可以使用的
但是必须通过inner class的外围类对象才能生成
如
下面这个结构 生成B对象的话 先必须有A对象 才能生成B
A.B b = (new A()).new B();
public class A
{
public class B
{}
}
如果inner class 是static的话 就没有这个限制 static inner class 跟普通类比 只是为了隐藏
如
下面这个结构 生成B对象的话 先必须有A对象 才能生成B
A.B b = new A.B();
public class A
{
public static class B
{}
}