精华内容
下载资源
问答
  • 1.什么是构造方法,怎么构造方法 2.代码中this是是什么意思:例如this.name=name;this.subject=subject 3.带参数和不带参数有什么区别 【一个对象怎么调用另外一个对象】 答:1.先实例化另外一个类对象,即...

    没有理清的疑问:
    1.什么是构造方法,怎么构造方法
    2.代码中的this是是什么意思:例如this.name=name;this.subject=subject
    3.带参数和不带参数有什么区别
    【一个对象怎么调用另外一个对象】
    答:1.先实例化另外一个类的对象,即先new;2.再调用另一个类的方法

    • 一个对象怎么调用另外一个对象的两种方法
    • 怎么把这三个文档打包成一个应用程序

    一个对象怎么调用另外一个对象的两种方法

    方法一:
    这里写图片描述
    teacher:

    public class teacher{
                private String name;
                private String subject;
    
                public teacher(){}      //不带参数的构造方法
    
                public teacher(String name,String subject){       //带参数的构造方法
                                this.name=name;
                                this.subject=subject;
                }
    
    
                public void teaching(){
                                System.out.println(name+" is teaching "+subject);
                }
    
    }

    student:

    public class student{
                   private String name;
    
                   public student(){}
    
                   public student(String name){
                       this.name=name;
                   }
    
                   public String getname(){
                       return name;
                   }
    
                   public void study(){
                        teacher teacher1=new teacher("zyj","java");
    //(3)首先获取到teacher类的对象,传递两个参数
                        teacher1.teaching();
    //(4)然后调用对象teacher1的teaching方法
                        System.out.println(name+" is studying...");
                   }
    
    }

    test1:

    public class test1{
            public static void main(String[] args){
            student stu1=new student("jack");//构造了一个student类的对象stu1,他的名字是jack
    //(1)调用student类带参数的构造方法,把jack传到了这里并且赋给了它成员变量name
            stu1.study();
    //(2)调用对象stu1的调用study方法
            }
    }

    方法二:这里写图片描述
    teacher:

    public class teacher{
                private String name;
                private String subject;
    
                public teacher(){}      //不带参数的构造方法
    
                public teacher(String name,String subject){       //带参数的构造方法
                                this.name=name;
                                this.subject=subject;
                }
    
    
                public void teaching(){
                                System.out.println(name+" is teaching "+subject);
                }
    
    }

    student:

    public class student{
                   private String name;
    
                   public student(){}
    
                   public student(String name){
                       this.name=name;
                   }
    
                   public String getname(){
                       return name;
                   }
    
                   public void study(teacher teacher1){
    
                        teacher1.teaching();//(4)然后调用对象teacher1的teaching方法
                        System.out.println(name+" is studying ......");
                   }
    
    }

    test1

    public class test1{
            public static void main(String[] args){
            teacher teacher1=new teacher("zyj","java");//(1)new teacher类带参数的构造方法,把name,subject传进来
            student stu1=new student("jack");//(2)调用student类带参数的构造方法,把jack传到了这里并且赋给了它成员变量name
            stu1.study(teacher1);//(3)调用对象stu1的调用study方法
            }
    }

    怎么把这三个文档打包成一个应用程序

    1.建立清单文件:新建文本文档,改名为manifest.mf
    这里写图片描述
    2.里面写上Main-Class: test1 这里写test1是也因为主程序main在test1里面
    注:这里Main-Class:要空一格写上你的class文件名
    这里写图片描述
    3.cmd系统里输入jar
    这里写图片描述
    4.输入jar cvfm test1.jar manifest.mf teacher.class student.class test1.class
    这里写图片描述
    5.输入java -jar test1.jar
    这里写图片描述
    补充:cmd运行jar命令(例如输入java -jar test1.jar)提示没有主清单属性怎么破cmd运行jar命令(例如输入java -jar test1.jar)提示没有主清单属性怎么破https://blog.csdn.net/zhaiyujia15195383763/article/details/81019900

    展开全文
  • 展开全部在JSP中使用JavaBean,可以实现HTML代码和Java代码的分离,是JSp更易于开发和维护:JavaBean是一个public类JavaBean 有一个不带参数的构造方法JavaBean中的32313133353236313431303231363533e78988e69d...

    展开全部

    在JSP中使用JavaBean,可以实现HTML代码和Java代码的分离,是JSp更易于开发和维护:JavaBean是一个public类

    JavaBean 有一个不带参数的构造方法

    JavaBean中的32313133353236313431303231363533e78988e69d8331333337396233属性通过get和set方法进行操作

    例如:定义个CircleArea的JavaBean用于封装圆面积的计算逻辑,以后凡是用到圆面积的计算方法均可使用该JavaBean来完成,实现了代码的重用。#CircleArea.java

    package JavaBeanTest;

    public class CircleArea {

    //定义两个属性 (r:半径;unit:单位)

    private double r=0;

    private String unit="";

    //无参的构造方法

    public CircleArea() {

    super();

    }

    public double getR() {

    return r;

    }

    public void setR(double r) {

    this.r = r;

    }

    public String getUnit() {

    return unit;

    }

    public void setUnit(String unit) {

    this.unit = unit;

    }

    //计算圆的面积并返回计算结果

    public String getArea(){

    return 3.14*r*r+"平方"+unit;

    }

    }

    在JSP中调用JavaBean代码如下:

    (1)导入JavaBean的类

    (2) 在指定范围内实例化一个JavaBean对象,如果该对象已经存在则直接引用

    (3) 对Javabean的实例对象进行操作

    (4)从指定范围内移除JavaBean

    -->

    JavaBean在JSP中的应用

    //调用page范围内的JavaBean

    circle1.setR(4);

    circle1.setUnit("米");

    out.println(circle1.getArea());

    out.println("
    ");

    //调用request范围内的JavaBean

    circle1.setR(6);

    circle1.setUnit("米");

    out.println(circle1.getArea());

    out.println("
    ");

    //调用session范围内的JavaBean

    circle1.setR(8);

    circle1.setUnit("米");

    out.println(circle1.getArea());

    out.println("
    ");

    //调用application范围内的JavaBean

    circle1.setR(9);

    circle1.setUnit("米");

    out.println(circle1.getArea());

    out.println("
    ");

    %>


    //将circle1从page范围内移除

    pageContext.removeAttribute("circle1");

    //将circle2从request范围内移除

    request.removeAttribute("circle2");

    //将circle3从session范围内移除

    session.removeAttribute("circle1");

    //将circle4从application范围内移除

    application.removeAttribute("circle1");

    %>

    展开全文
  • 7.9.3 留个无参数的构造方法——给重要属性赋初始值 183 7.9.4 在构造方法中调用构造方法 184 7.10 方法大汇总 185 7.10.1 本例中用到的类 186 7.10.2 使用例程将本章的知识穿起来 189 7.11 小结:多方位理解...
  • 7.9.3 留个无参数的构造方法——给重要属性赋初始值 183 7.9.4 在构造方法中调用构造方法 184 7.10 方法大汇总 185 7.10.1 本例中用到的类 186 7.10.2 使用例程将本章的知识穿起来 189 7.11 小结:多方位理解...
  • 7.9.3 留个无参数的构造方法——给重要属性赋初始值 183 7.9.4 在构造方法中调用构造方法 184 7.10 方法大汇总 185 7.10.1 本例中用到的类 186 7.10.2 使用例程将本章的知识穿起来 189 7.11 小结:多方位理解...
  • java常用工具类使用

    热门讨论 2012-03-19 20:11:37
    表1 java.util.Date类的构造方法 主要的方法有: 返回 异常 说明 boolean after(Date when) 测试当前对象表示的时间是否在指定时间之后。 boolean before(Date when) 测试当前对象表示的时间是否在指定时间之前。 ...
  • java面试宝典

    2013-02-28 16:04:01
    java面试试题 全面 准确 答案 coreJava部分 8 1、面向对象特征有哪些方面? 8 2、作用域public,private,protected,以及不写时区别? 8 3、String 是最基本数据类型吗? 8 4、float 型float f=3.4是否正确? 8 ...
  • java 面试题 总结

    2009-09-16 08:45:34
    但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地...
  • 杂记——方法与函数

    2020-06-07 23:31:30
    结果都是方法与函数其实一样意思,只是在C语言中习惯叫函数,而在Java中习惯叫方法,不管怎么叫,都是指同一个意思。 方法(或函数) 必须在类中。方法的定义: <修饰符><返回值类型><方法名> ...

    一直感觉方法和函数没什么区别,这次特地查了查:

    结果都是方法与函数其实一样的意思,只是在C语言中习惯叫函数,而在Java中习惯叫方法,不管怎么叫,都是指同一个意思。
    方法(或函数) 必须在类中。方法的定义:
    <修饰符><返回值类型><方法名> (<参数类型> <参数名>){…}
    通常你看到一个带()的就是方法了,例如: aa.XXX(); 是指调用实体aa的XXX()方法。

    看到aa.XXX()我又想到一个问题,为什么有的要new,而有的直接’.’。

    一番查询,原来这里有静态方法(static修饰)和非静态方法有关。

    • 静态方法,是使用static关键字修饰的方法,又叫类方法,属于类的。在实例化对象之前就可以通过类名.方法名调用。(类里的静态变量也可以类名.变量名调用)
    • 非静态方法,是不含有static关键字修饰的普通方法,又称为实例方法,成员方法。属于对象的,不属于类的。必须通过new关键字创建对象后,再通过对象.方法或对象.变量调用
    • 静态方法和非静态方法的区别
      1. 普通方法无所畏惧。
      2. 在静态方法中,不能调用非静态方法;不能引用成员变量(即,没有static修饰的变量);不能使用super和this关键字。
      3. 静态方法的生命周期跟相应的类一样长,静态方法和静态变量会随着类的定义而被分配和装载入内存中。一直到线程结束,静态属性和方法才会被销毁;非静态方法的生命周期和类的实例化对象一样长,只有当类实例化了一个对象,非静态方法才会被创建,而当这个对象被销毁时,非静态方法也马上被销毁。
    • 注意:既然有静态方法(变量),那么也有静态类,静态类只能是内部类

    这里很多引用这篇文章https://blog.csdn.net/SeniorShen/article/details/100058364

    函数中还有构造函数,有什么用?

    构造函数是java函数中一种特殊的函数,定义方法为函数名与类名完全相同,比如我们定义一个学生类,定义其构造函数。

    class Student{ //学生类
    	String id;
    	String name;
    	int age;
    
    	public Student(){}  //这个就是构造函数,也是无参构造
    
    	public Student(String id,String name,int age){ //这个是有参构造
    		this.id = id;
    		this.name = name;
    		this.age = age;
    	} 
    
    	public Student(String id,String name){ //这个是有参构造的重载
    		this.id = id;
    		this.name = name;
    	} 
    } 
    

    注意点:
    (1)构造函数名与类名完全相同
    (2)构造函数无返回值类型
    (3)构造函数可以有参数也可以没有参数,可以有一个参数或者多个参数
    (4)可以对构造函数进行函数重载(在同一个类中定义多个函数名相同,参数不同的函数叫函数重载)
    (5)当我们定义类后不声明任何构造函数,则java虚拟机会帮我们创建一个空参构造。假如我们声明了一个有参构造,java虚拟机就不会帮我们创建一个空参构造,此时我们想用空参构造创建一个对象,那么就必须在类中声明一个空参构造。

    一般我们在创建实例类的时候,通常都会写一个无参和一个有参构造,为什么,不是会默认创建一个无参吗?这是为我们在创建对象时对对象设置初值(new a()或者new a(“初值”))所准备。

    当然,上边大家肯定都学过,主要是下边的

    • 构造函数有什么作用
    1. 创建对象。使用new 构造函数名()来创建对象。
    2. 对对象属性设置初值。构造函数创建对象后,可以对对象属性设置初值,无参构造函数设置的是null或者0;有参构造设置的是相应的初值。
    • 子类与父类的构造函数
             构造函数不能继承,只能调用。子类构造函数中第一句有一个隐藏的super()语句,该语句是调用父类的空参构造函数。如果父类有一个有参构造,那么子类必须声明一个有参的super()函数,否则会报错。
    • 构造函数私有化
    private Student(){}
    

           当构造函数私有后,我们不能在外部类中实例化这个类,也就是不能创建这个类的对象,只能在本类内部创建对象,然后对外提供返回对象的方法,此时提供的对象是唯一的。例如:

    private Student(String id,String name){
    		this.id = id;
    		this.name = name;
    } 
    
    private static Student stu = new Student("1","张三");
    
    public static Student getStudent(){
    	return stu;
    }
    
    public class Test{
    	public static void main(String[] args){
    		System.out.println(Student.getStudent());
    	}
    }
    

    这里很多引用这篇文章https://baijiahao.baidu.com/s?id=1632060092493911390&wfr=spider&for=pc

    私有构造函数,我又想到有什么用?

    可以防止该类在外部被实例化,像上边在其他的外部类中去实例化Student时,只能根据静态方法getStudent来获取类的实例且只能获取一个实例,常见的应用是工具类和单例模式。

    那静态构造函数呢?

    1. 静态构造函数自动被调用,不能被显式调用,在程序中,用户无法控制何时执行静态构造函数。
    2. 静态构造函数既没有访问修饰符,也没有参数。
    3. 一个类的静态构造函数在这个类的任何实例被创建前执行。
    4. 一个类的静态构造函数在类的任何静态成员被引用前执行。
    5. 一个类的静态构造函数从不会被执行一次以上。
    6. 一个类的静态构造函数在它的所有派生类的静态构造函数执行之后执行。

    具体参考:静态构造函数https://blog.csdn.net/chunxia75qin/article/details/11849143

    本来准备研究研究设计模式的,但是发现有些概念不是很清楚(笑哭)。

    展开全文
  • ES6 实现自己 Promise

    2020-12-26 19:05:55
    <div><h3>一、JavaScript异步编程背景 ​ 从去年ES2015发布至今,已经过去了一年多,ES2015发布语言特性中最为流行也就莫过于Promise了,...promise能够链式调用归功于then方法返回一个全新...
  • c#学习笔记.txt

    热门讨论 2008-12-15 14:01:21
    如果没有ref,out则默认为值传递,虽然可以在方法中修改这个参数的值,但是修改后的值不会还会到调用方法的程序中. params :params 关键字可以指定在参数数目可变处采用参数的方法参数 ref :引用传递 out : 7, ...
  • 4.3.5 说一说你对java.lang.Object对象中hashCode和equals方法的理解。在什么场景下需要重新实现这两个方法。 4.3.6 在jdk1.5中,引入了泛型,泛型存在是用来解决什么问题。 4.3.7 这样a.hashcode() 有什么用...
  • asp.net知识库

    2015-06-18 08:45:45
    动态调用对象属性和方法——性能和灵活性兼备的方法 消除由try/catch语句带来warning 微软应试题完整版(附答案) 一个时间转换问题,顺便谈谈搜索技巧 .net中正则表达式使用高级技巧 (一) C#静态成员和...
  • Android 上百实例源码分析以及开源分析 集合打包4

    千次下载 热门讨论 2012-07-10 21:54:03
    获得调用的API URL链接,调用Caller.doGet() 实现方式是通过HttpClient,然后就是将获得Stream转换成JSONArray构造所需要String,最后就是调用 getAlbums(JSONArray jsonArrayAlbums) 。 在Jamendo程序中,有一...
  • C#微软培训教材(高清PDF)

    千次下载 热门讨论 2009-07-30 08:51:17
    11.2 方法的参数.125 11.3 静态和非静态的方法.129 11.4 方法的重载.130 11.5 操作符重载.134 11.6 小 结.137 第十二章 域 和 属 性 .139 12.1 域 .139 12.2 属 性 .143 12.3 小 结 .146 第十三...
  • 新版Android开发教程.rar

    千次下载 热门讨论 2010-12-14 15:49:11
    程序可以采用 JAVA 开发,但是因为它虚拟机 (Virtual Machine) Dalvik ,是将 JAVA bytecode 转成 自 己格式,回避掉需要付给 SUN 有关 JAVA 授权费用。 对手机制造者影响 � Android 是款开源移动计算...
  • C#微软培训资料

    2014-01-22 14:10:17
    11.2 方法的参数.125 11.3 静态和非静态的方法.129 11.4 方法的重载.130 11.5 操作符重载.134 11.6 小 结.137 第十二章 域 和 属 性 .139 12.1 域 .139 12.2 属 性 .143 12.3 小 结 .146 第十三...
  • 软件工程教程

    热门讨论 2012-07-06 23:10:29
    UML基本的构造块 事物 关系 图 UML 公共机制 规格说明 UML模型: 使用图和图标可视化模型 各种建模元素的规格说明所组成 规格说明 模型元素的特征和语义的文本描述—模型的“肉” 形成了承载模型的语义背板,赋予...
  • 在一小时内学会 C#(txt版本)

    热门讨论 2009-08-19 18:09:37
    使用例程,简单却完整的探索 C# 语言的构造和特点。本文特别适合有 C++ 基础却没有太多精力学习 C# 的读者。 关于作者 Aisha Ikram 我现在在英国一家软件公司任技术带头人。我是计算机科学的硕士。我主要使用 ...
  • //调用画笔drawImage方法参数是要画图片,初始坐标,结束坐标,和在哪里画,this代表是LoginWin这 //个“画布”对象 g.drawImage(image, 0, 0, this.getWidth(), this.getHeight(), this); } ...
  • Visual C++ 2008入门经典--详细书签版

    热门讨论 2013-02-02 16:07:15
    7.4.2 默认的构造函数 304 7.4.3 在类定义中指定默认的形参值 306 7.4.4 在构造函数中使用初始化列表 307 7.5 类的私有成员 308 7.5.1 访问私有类成员 310 7.5.2 类的友元函数 311 7.5.3 默认复制构造函数 ...
  • 7.4.2 默认的构造函数 304 7.4.3 在类定义中指定默认的形参值 306 7.4.4 在构造函数中使用初始化列表 307 7.5 类的私有成员 308 7.5.1 访问私有类成员 310 7.5.2 类的友元函数 311 7.5.3 默认复制构造函数 ...
  • 在新编程思想中,指针基本上被禁止使用(JAVA中就是这样),至少也是被限制使用。而在我们交换机程序中大量使用指针,并且有增无减。 2、防止指针/数组操作越界 【案例1.2.1】 在香港项目测试中,发现ISDN话机...

空空如也

空空如也

1 2
收藏数 23
精华内容 9
关键字:

java怎么调用带参数的构造方法

java 订阅