phoenix850121 2017-02-08 02:08 采纳率: 14.3%
浏览 2236
已采纳

例子中setSize方法为什么可以直接用而不用对象引用?

import java.awt.*;
import javax.swing.*;

/**

  • @version 1.32 2007-06-12
  • @author Cay Horstmann */ public class SimpleFrameTest { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { SimpleFrame frame = new SimpleFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }); } }

class SimpleFrame extends JFrame
{
public SimpleFrame()
{
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
}

public static final int DEFAULT_WIDTH = 300;
public static final int DEFAULT_HEIGHT = 200;
}

setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);方法为什么可以直接用而不用对象引用?

  • 写回答

6条回答 默认 最新

  • little_how 2017-02-08 02:53
    关注

    1.父类有setSize的方法,并且可以被继承;
    2.为什么可以直接用,不是说不需要对象引用就能调用,而是在一个对象内,方法之前是可以互相调用的;
    你的setSize是在构造方法中调用的,构造方法也是方法哦;
    只要方法中的调用关系不违背static调用非static就没关系;
    3.就好像你自己写一个类,里面两个非静态方法,然后其中一个调用另外一个是一样的道理,但是方法的生效
    肯定是在你实例化之后,所以那只能算是方法体,说不定jit之后还会内联;

    希望对你有帮助....

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了