我们写一个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. linux5.6以下版本的不兼容问题

    之前一直用的都是mysql5.6版本,最近突然使用到了mysql5.1版本,于是在导入数据的时候便出现了很多由于版本不兼容的问题. 1.mysql5.1没有datetime类型,所以对于时间类型,只能 ...

  2. tips:可变参数列表

    tips:可变参数列表! 先来看看以往我们要传递许多参数时是怎么做的: java: public static void main(String []args){} c: int main(int a ...

  3. hive中sql使用英文分号

    hql只要遇见分号则认识是语句的EOF,所以对于分号,需要用“\“转义. 例如: insert overwrite table test_json_map select '{"account ...

  4. 20165205 2017-2018-2 《Java程序设计》第六周学习总结

    20165205 2017-2018-2 <Java程序设计>第六周学习总结 教材学习内容总结 String类 String对象(常量,对象) 字符串并置(结果仍是常量) 常用方法 len ...

  5. 使用Fiddler获取手机app数据

    参考资料:https://www.jianshu.com/p/9e05a2522758 Fiddler下载地址   https://www.telerik.com/download/fiddler

  6. Linux 搜索日志信息

    在工作中我们经常要通过日志来查找问题,但有时候日志太多又不知道日志什么时候打印的,这时我们可以通过一下方法来查找: 1.进入到日志文件存放的目录下 2.grep  关键字  *    例如要查找多有有 ...

  7. 13.App爬取相关库的安装(Charles,Mitmproxy,Appium)

    由于App没有像浏览器一样直观的后台请求工具,主要用一些抓包技术抓取数据.(目前也在学习安装,参考书籍.) 首先呢,一些简单的接口通过Charles或mitmproxy分析,找出规律,直接用程序去抓取 ...

  8. 1.js简介

    1.JavaScript 诞生于1995年,起初主要用于处理网页中的前端验证. 2.前端验证:指检查用户输入的内容是否符合一定规则. 3.JavaScript 由网景公司发明. 4.JS 的标准命名为 ...

  9. 解决oracle导入未分配表空间的问题

    select 'alter table ' || t.TABLE_NAME || ' allocate extent;' from user_tables t order by t.TABLE_NAM ...

  10. PostgreSQL (简称gp)小集

    1. SQLyog & Navicat SQLyog可以管理 MySQL Navicat 可以管理 SQL Server,MySQL,PostgreSQL,SQLite 2. 日期及加减 no ...