关于静态方法与非静态方法

t427795737 t427795737 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
各位大虾,下面这段程序是核心技术卷图形设计那一章的里的代码,我对NotHelloWorldFrame 类中构造器如此调用setTitle("NotHelloWorld")以及
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT)感到奇怪,根据我以前掌握的知识似乎只有静态方法才能如此调用,但是我在API里面查询到这两个方法并不是静态方法,而是实例方法,我想应该是 new JFrame().setTitle("NotHelloWorld")
new JFrame().setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT)

import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.Graphics;

public class NotHelloWorld
{
public static void main(String[] args)
{
NotHelloWorldFrame frame = new NotHelloWorldFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}

/**
A frame that contains a message panel
*/
class NotHelloWorldFrame extends JFrame
{
public NotHelloWorldFrame()
{
setTitle("NotHelloWorld");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);

// add panel to frame
NotHelloWorldPanel panel = new NotHelloWorldPanel();
add(panel);
}

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

class NotHelloWorldPanel extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawString("Not a Hello, World program", MESSAGE_X, MESSAGE_Y);
}

public static final int MESSAGE_X = 75;
public static final int MESSAGE_Y = 100;
}
...全文

相关推荐

浅析C#中静态方法和非静态方法的区别

C#静态方法与非静态方法的区别不仅仅是概念上的,那么他们有什么具体的区别呢?让我们通过本文向大家介绍下C#中静态方法和非静态方法的区别,一起看看吧

weixin_38624183

c#静态方法和非静态方法详细介绍

C#的类中可以包含两种方法:静态方法和非静态方法。 使用了static 修饰符的方法为静态方法,反之则是非静态方法。 静态方法是一种 特殊的成员方法,它不属于类的某一个具体的实例,而是属于类本身。所以对静态方法不需要 首先创建一个类的实例,而是采用类名.静态方法的格式 。1.static方法是类中的一个成员方法,属于整个类,即不用创建任何对象也可以直接调用!static内部只能出现static变量和其他static方法!而且static方法中还不能使用this….等关键字..因为它是 属于整个类! 2.静态方法效率上要比实例化高,静态方法的缺点是不自动进行销毁,而实例化的则可以做销毁。 3.静

weixin_38742421

通过反射调用静态方法

本例演示了如何使用反射,调用类的静态方法,封装了工具类ClsTool,统一实现静态方法的调用。使用反射,在特定场景下,能够很好的简化代码。例如mybatis

爬山的人2008

C#静态方法与非静态方法实例分析

本文实例分析了C#静态方法与非静态方法,并对其用法进行了较为全面的分析。分享给大家供大家参考。具体分析如下: 通常来说,C#的类中可以包含两种方法:静态方法和非静态方法。 使用了static 修饰符的方法为静态方法,反之则是非静态方法。 静态方法是一种特殊的成员方法,它不属于类的某一个具体的实例,而是属于类本身。所以对静态方法不需要首先创建一个类的实例,而是采用 类名.静态方法 的格式 。 1)static方法是类中的一个成员方法,属于整个类,即不用创建任何对象也可以直接调用。 static内部只能出现static变量和其他static方法,而且static方法中还不能使用this等关键字,因

weixin_38728183

Java中的静态方法能否被重写?

* 非静态方法属于类的实例,是可以被子类重写,从而达到多态的效果;   静态方法属于类,是不能被重写,故而也不能实现多态。 *   下面是具体的验证过程   首先,定义一个超类A,里边定义一个静态方法和一个非静态方法: publicclassA{ publicvoidunstaticMethod(){ System.out.println("SuperClassunstaticMethod"); } publicstaticvoidstaticMethod(){ System.out.println("SuperClassstaticMethod"); } }   接下

weixin_38701952
评论 3
收藏 已收藏
分享
返回顶部
t427795737
Java SE 62,621 成员 307,251 内容