我们写一个car类,并写一个无参构造方法。

 public class Car {
int speed;
//构造方法名字和 类一致 区分大小写 不需要写返回值 和参数列表
public Car(){
System.out.println("给我造一辆GTR!");
}
}

我们来创建一个对象car

 public class TestConstructor {

     /**
* new关键字调用
* 构造方法有返回值是个地址 不需要我们定义 也不需要return
* 如果我们没有定义构造方法 系统会自动定义一个无参构造方法
* 构造方法名 必须和 类名一致 区分大小写
* 构造该类的对象 也经常用来初始化 对象的属性 见 Point 那个构造方法
*/
public static void main(String[] args) {
Car c = new Car(); } }
构造该类的对象 也经常用来初始化 对象的属性 我们来看一下代码。
 public class Point {
double x,y,z; public Point(double _x,double _y,double _z){
x=_x;
y=_y;
z=_z; } public void setX(double _x){
x=_x;
}
public void setY(double _y){
y=_y;
}
public void setZ(double _z){
z=_z;
} //点到点的距离 方法
public double distance(Point p){
//Math.sqrt(); 是开方函数
return Math.sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y) +(z-p.z)*(z-p.z));
}
当然当我们学了this,上面的代码就写成下面的样子。因为this指向对象本身,这样就没有歧义。
 public class Point {
double x,y,z; public Point(double x,double y,double z){
this.x=x;
this.y=y;
this.z=z; } public void setX(double x){
this.x=x;
}
public void setY(double y){
this.y=y;
}
public void setZ(double z){
this.z=z;
} //点到点的距离 方法
public double distance(Point p){
//Math.sqrt(); 是开方函数
return Math.sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y) +(z-p.z)*(z-p.z));
}

写个main方法,看下效果。

     public static void main(String[]args){
Point p = new Point(,,);
Point p2 = new Point(,,);
System.out.println(p.x);
System.out.println(p.y);
System.out.println(p.z);
System.out.println(p2.x);
System.out.println(p2.y);
System.out.println(p2.z);
System.out.println(p.distance(p2)); p.setX();
p.setY();
p.setZ();
System.out.println(p.x);
System.out.println(p.y);
System.out.println(p.z); //p点到p2点的距离
System.out.println(p.distance(p2));
}
}

控制台打印

3.0
4.0
8.0
3.0
5.0
8.0
1.0 3.0
5.0
8.0
0.0

构造器不能被继承 只能被调用 所以不存在overwrite 但可以overload

Constructor构造方法的更多相关文章

  1. Class对象、反射机制、获取Constructor构造方法

    1.Class对象的三种创建方法(Class首字母大写) public class Demo { public static void main(String[] args){ Object obj= ...

  2. react中constructor()和super()的具体含义以及如何使用

    1.constructor()---super( )的基本含义 constructor()--构造方法 这是ES6对类的默认方法,通过new命令生成对象实例时自动调用该方法.并且,该方法是类中必须有的 ...

  3. NiXi.DAY06东软实训.:面向对象思想~抽象~static~final~构造方法及其重载

    本章技能目标: 使用类图描述设计 掌握面向对象设计的基本步骤 掌握类和对象的概念 掌握构造方法及其重载 掌握封装的概念及其使用 本章单词: class:类 object:对象 static: fina ...

  4. springboot - Constructor、@Autowired、@PostConstruct分析

    1.Constructor 构造方法 2.@Autowired 依赖注入 3.@PostConstruct 在依赖注入完成后被自动调用 4. 三者的顺序: 从依赖注入的字面意思就可以知道,要将对象p注 ...

  5. react中constructor和super()以及super(props)的区别。

    react中这两个API出镜率超级高,但是一直不太懂这到底是干嘛的,有什么用:今天整理一下,方便自己查看同时方便大家. 1.constructor( )-----super( )的基本含义 const ...

  6. Java学习之反射机制及应用场景

    前言: 最近公司正在进行业务组件化进程,其中的路由实现用到了Java的反射机制,既然用到了就想着好好学习总结一下,其实无论是之前的EventBus 2.x版本还是Retrofit.早期的View注解框 ...

  7. 0031 Java学习笔记-梁勇著《Java语言程序设计-基础篇 第十版》英语单词

    第01章 计算机.程序和Java概述 CPU(Central Processing Unit) * 中央处理器 Control Unit * 控制单元 arithmetic/logic unit /ə ...

  8. java中的注解(Annotation)

    转载:https://segmentfault.com/a/1190000007623013 简介 注解,java中提供了一种原程序中的元素关联任何信息.任何元素的途径的途径和方法. 注解是那些插入到 ...

  9. Java基础常见英语词汇

    Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的                             ['prəʊɡræmɪŋ]编程 OO: object ...

随机推荐

  1. android Keycode 完全对照表

    input keyevent 82 menuinput keyevent 3 homeinput keyevent 19 upinput keyevent 20 downinput keyevent ...

  2. centos7 真实机安装后没有网卡解决办法

    我们在真实机安装完centos7版本后,会发现没有网卡,只有lo口 因为真实机不同你在虚拟机里面,这个时候我们不能连网,更加不要说配置什么静态ip了 是什么原因呢,是因为有些真实机安装了centos系 ...

  3. 匿名内部类中不能修改int变量时、final int i 不能改变i的值时、或 i++线程不安全。使用AtomicInteger;

    在匿名内部类或某某情况下中引入的变量必须是Final最终型的:这时还想要去修改这个变量就需要使用到AtomicInteger这个类了: AtomicInteger CarSize = new Atom ...

  4. 二、Html5元素、属性、格式化

  5. BZOJ2560串珠子

    /* 很清新的一道题(相比上一道题) g[S]表示该 S集合中胡乱连的所有方案数, f[S] 表示S集合的答案 那么F[S] 等于G[S]减去不合法的部分方案 不合法的方案就枚举合法的部分就好了 g[ ...

  6. ELK新手教程——pomelo + log4js + ELK(一)

    随着项目越来越庞大,日志的数量也随之增多,游戏上线后的日志量肯定更多了,所以对日志的收集.存储.查询就非常重要了,开源界第一日志分析系统ELK必不可少. ELK系统由Elasticsearch(分布式 ...

  7. 造excel表格横、列数据每一格自动累加填充效果

    1.需求 excel每个横格子和竖格子number数据不一致的情况,保持如下金额字段每次自动累加 2.步骤: 1)设置excel格子为number格式(可以不要小数) 2)选中需要增序的单元格,选择e ...

  8. 2012年第三届蓝桥杯Java本科组省赛试题解析

    题目地址:https://wenku.baidu.com/view/326f7b4be518964bcf847c96.html?rec_flag=default    => 百度文档 题目及解析 ...

  9. koltin语言学习(一)——什么是koltin

    转自:Koltin China (一) 介绍 #Kotlin-for-Android-Dev 1. 什么是Kotlin? Kotlin是JetBrains开发的基于JVM的语言.Kotlin是使用Ja ...

  10. Valgrind简单用法 (转)

    转自 http://www.cnblogs.com/sunyubo/archive/2010/05/05/2282170.html Valgrind的主要作者Julian Seward刚获得了今年的G ...