class Trangle{
double sideA, sideB, sideC, area, length;
boolean flag;
Trangle(double a, double b, double c){//public
if(a < (b + c) && b < (a + c) && c < (a + b)){
sideA = a;
sideB = b;
sideC = c;
flag = true;
}
else
flag = false;
}
double getLength(){//public
length = sideA + sideB + sideC;
return length;
}
double getArea(){//public
if(flag){
double p = (sideA + sideB + sideC)/2.0;
area = Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
return area;
}
else{
System.out.println("This is not a trangle");
return 0;
}
}
void setABC(double a, double b, double c){//public
if(a < (b + c) && b < (a + c) && c < (a + b)){
sideA = a;
sideB = b;
sideC = c;
flag = true;
}
else{
flag = false;
sideA = sideB =sideC = 0;
}
}
} class Lader{
double above,botton,height,area;
Lader(double a,double b, double h){
above =a;
botton = b;
height = h;
}
public double getArea(){
area = (above + botton)*height/2.0;
return area;
}
} class Circle{
double radius, area;
Circle(double r){
if(r > 0)
radius = r;
else
radius = 0;
}
double getRadius(){
return radius;
}
double getArea(){
area = Math.PI * radius * radius;
return area;
}
double getLength(){
return 2 * Math.PI * radius;
}
void setRadius(double r){
if(r > 0)
radius = r;
else
radius = 0;
}
} public class AreaAndLength{
public static void main(String[] args){
double length, area;
Circle circle = null;
Trangle trangle = null;
Lader lader = null;
circle = new Circle(2.0);
trangle = new Trangle(5.0, 3.0, 4.0);
lader = new Lader(4, 8, 5); length = circle.getLength();
System.out.print("\nCircle's length is "+ length);
area = circle.getArea();
System.out.println(". Area is "+ area +".\n"); length = trangle.getLength();
System.out.print("Trangle's length is "+ length);
area = trangle.getArea();
System.out.println(". Area is "+ area +".\n"); area = lader.getArea();
System.out.println("Lader's area is "+ area +".\n"); trangle.setABC(12, 34, 1);
area = trangle.getArea();
System.out.print("This nwe trangle's area is "+ area);
length = trangle.getLength();
System.out.println(". Length is "+ length +".\n");
}
}

trangle类的成员函数加不加public都可以运行成功,什么原因呢?

类中定义成员方法。加不加public有什么区别?的更多相关文章

  1. Java中主类中定义方法加static和不加static的区别

     Java中主类中定义方法加static和不加static的区别(前者可以省略类名直接在主方法调用(类名.方法),后者必须先实例化后用实例调用) 知识点:1.Getter and Setter 的应用 ...

  2. Java基础(42):Java中主类中定义方法加static和不加static的区别(前者可以省略类名直接在主方法调用,后者必须先实例化后用实例调用)

    package lsg.ap.april4th2; /* 知识点:1.Getter and Setter 的应用 2.局部变量与成员变量(也可叫做全局变量) 3.Static关键字的用法 a.成员变量 ...

  3. JAVA中,一个类中,方法加不加static的区别,

    通俗理解: 1.若是对象的特有行为,(也就是某个实例方法特有的行为),不加static 2. 若是对象集合共有的集合,则加static static类型方法只可以访问静态变量和方法 实例方法可以访问实 ...

  4. MFC 如何在一个类中使用在其他类中定义的变量或函数

    [声明:本文的知识点来源于网络,参考网址:https://blog.csdn.net/bill_ming/article/details/7407848] [以下三种方法亲测有效,可以根据具体情况来选 ...

  5. java类中定义接口

    今天看到一个java类中定义了接口,写个备忘录,记录一下 package com.gxf.test; public class Test_interface { public interface sh ...

  6. 基类中定义的虚函数在派生类中重新定义时,其函数原型,包括返回类型、函数名、参数个数、参数类型及参数的先后顺序,都必须与基类中的原型完全相同 but------> 可以返回派生类对象的引用或指针

      您查询的关键词是:c++primer习题15.25 以下是该网页在北京时间 2016年07月15日 02:57:08 的快照: 如果打开速度慢,可以尝试快速版:如果想更新或删除快照,可以投诉快照. ...

  7. c++中在一个类中定义另一个只有带参数构造函数的类的对象

    c++中在一个类中定义另一个只有带参数构造函数的类的对象,编译通不过 #include<iostream> using namespace std; class A { public:  ...

  8. Scala的类中定义内部类实战

    scala独特之处在于可以在类中定义内部类,起到对外屏蔽作用. 类中默认都是public权限.后面将讲解如何引入接口,scala中的接口与java点区别.特质/接口(Trait)

  9. 泛型方法或泛型类中的方法是内部调用、PInvoke 或是在 COM 导入类中定义的。

    泛型基类中引用Api函数定义时static extern,在子类中会提示: 未处理TypeLoadException 泛型方法或泛型类中的方法是内部调用.PInvoke 或是在 COM 导入类中定义的 ...

随机推荐

  1. 牛客 109 C 操作数 (组合数学)

    给定长度为n的数组a,定义一次操作为:1. 算出长度为n的数组s,使得si= (a[1] + a[2] + ... + a[i]) mod 1,000,000,007:2. 执行a = s:现在问k次 ...

  2. Where is __dso_handle defined?

    Where is __dso_handle defined? 来源  https://stackoverflow.com/questions/34308720/where-is-dso-handle- ...

  3. 【weixin】微信支付---Native支付模式二(PC端支付大多采用此模式)

    [模式二]:商户后台系统调用微信支付[统一下单API]生成预付交易,将接口返回的链接生成二维码,用户扫码后输入密码完成支付交易.注意:该模式的预付单有效期为2小时,过期后无法支付 模式二与模式一相比, ...

  4. init是一个自定义方法名

    init是一个自定义方法名,用于初始化页面变量.上面的代码表示初始化方法是在当前网页加载后执行的(当浏览器打开网页时,触发窗口对象的onload方法,用上面的代码执行名为init的初始化方法).事实上 ...

  5. Phoenix实现分页查询

    1 利用offset语法,官网的语法 ELECT * FROM TEST LIMIT 1000; SELECT * FROM TEST LIMIT 1000 OFFSET 100; 2 公式如下 SE ...

  6. RHEL7中配置本地YUM软件源

     1.创建目录,挂载光盘 [root@localhost ~]# mkdir /mnt/iso [root@localhost ~]# mount /dev/sr0  /mnt/iso mount: ...

  7. Tomcat 7 简单定制

    Tomcat笔记 安装 wget https://mirrors.huaweicloud.com/apache/tomcat/tomcat-7/v7.0.96/bin/apache-tomcat-7. ...

  8. Linux根文件系统和目录结构及bash特性3

    bash的基础特性: 命令补全:        shell程序在接收到用户执行命令的请求,分析完成之后,最左侧的字符串会被当作命令        命令查找机制:            查找内部命令   ...

  9. windows环境下备份与恢复,与文件拷贝

    mySQL数据库在windows环境下备份与恢复 解压版需进入数据库安装目录.安装版可以忽略本步骤: 1.先在运行中输入CMD,启动命令行2.进入Mysql的Bin目录:E:\Program File ...

  10. Java#Spring框架下注解解析

    @Bean 定义Bean @Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里.添加的bean的id为方法名 @Configura ...