「java对象图」java对象图怎么画

博主:adminadmin 2023-03-22 11:20:08 710

本篇文章给大家谈谈java对象图,以及java对象图怎么画对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 中 单实例和多实例是指的什么?

简单的说单例就是

只能有一个实例,所以地方用到的实例都是同一个。

就好像家人吃饭,桌子是单例的,大家用的是同一个。而碗是多例的,每人都有自几的。

下面是具体的例子:

Java模式之单例模式:

单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例。

特点:

1,一个类只能有一个实例

2,自己创建这个实例

3,整个系统都要使用这个实例

例:

在下面的对象图中,有一个"单例对象",而"客户甲"、"客户乙"

和"客户丙"是单例对象的三个客户对象。可以看到,所有的客户对象共享一个单例对象。而且从单例对象到自身的连接线可以看出,单例对象持有对自己的引用。

Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。在很多操作中,比如建立目录

数据库连接都需要这样的单线程操作。一些资源治理器经常设计成单例模式。

外部资源:譬如每台计算机可以有若干个打印机,但只能有一个Printer

Spooler,以避免两个打印作业同时输出到打印机中。每台计算机可以有若干个通信端口,系统应当集中治理这些通信端口,以避免一个通信端口被两个请求同时调用。内部资源,譬如,大多数的软件都有一个(甚至多个)属性文件存放系统配置。这样的系统应当由一个对象来治理这些属性文件。一个例子:Windows

回收站。

在整个视窗系统中,回收站只能有一个实例,整个系统都使用这个惟一的实例,而且回收站自行提供自己的实例。因此,回收站是单例模式的应用。

两种形式:

1,饿汉式单例类

public

class

Singleton

{

private

Singleton(){}

//在自己内部定义自己一个实例,是不是很希奇?

//注重这是private

只供内部调用

private

static

Singleton

instance

=

new

Singleton();

//这里提供了一个供外部访问本class的静态方法,可以直接访问

public

static

Singleton

getInstance()

{

return

instance;

}

}

2,懒汉式单例类

public

class

Singleton

{

private

static

Singleton

instance

=

null;

public

static

synchronized

Singleton

getInstance()

{

//这个方法比上面有所改进,不用每次都进行生成对象,只是第一次

//使用时生成实例,提高了效率!

if

(instance==null)

instance=new

Singleton();

return

instance;

}

}

第二中形式是lazy

initialization,也就是说第一次调用时初始Singleton,以后就不用再生成了。

注重到lazy

initialization形式中的synchronized,这个synchronized很重要,假如没有synchronized,那么使用getInstance()是有可能得到多个Singleton实例。

一般来说第一种比较安全。进入讨论组讨论。

java怎么由graphics对象生成图片? 急!

graphic是从bufferedImage得到的对象。直接编码bufferedImage,输出不同的格式有不同的编码类,然后用outputstream输出就行了。

我写的合并图片的方法你参考下。JPEGCodec是个在1.7已经取消的编码器,1.7以下都正常。

BufferedImage image1 = new BufferedImage(992, 1370, BufferedImage.TYPE_INT_RGB);

Graphics2D graphics = (Graphics2D) image1.getGraphics();

graphics.setBackground(Color.WHITE);

graphics.clearRect(0, 0, 992, 1370);

BufferedImage image=null;

for(int i=0;ilist.size();i++){

image = (BufferedImage) list.get(i);

int width = (int) (image.getWidth(null)*1.1); // 得到源图宽

int height = (int) (image.getHeight(null)*1.1); // 得到源图长

graphics.drawImage(image, (992-width)/2, 40+20*i+height*i, width, height, null); // 绘制图

}

FileOutputStream out = new FileOutputStream("d:/a/4.jpg"); // 输出到文件流

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); //jpg编码类

encoder.encode(image1);

out.close();

java中,image是一个图形对象,从image得到画笔g,用g画出的图形都在image上吗?

对的。 此时的image对象将所有的绘制的图形的数据都保存在了内存中。

java对象和ui图片怎么连接在一起的?

在面板上搞一个和面板一样大的JLabel

然后,通过JFileChooser获得路径,利用这个图片的路径,构建一个ImageIcon

最后,根据这个ImageIcon去给JLabel对象setIcon(ImageIcon对象);

具体地:

1.panel.add(label,BorderLayout.CENTER);

2.ImageIcon icon = new ImageIcon(url);

3.label.setIcon(icon);

下面的代码你把 .JPG改成BMP试试看,O(∩_∩)O~

package com.shlq.sample;

import java.awt.BorderLayout;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

public class ImagePane extends JPanel

{

JLabel jl = null;

ImageIcon img = null;

public ImagePane()

{

img = new ImageIcon( "E:\\Picture\\1.jpg ");

jl = new JLabel(img);

this.setLayout(new BorderLayout());

this.add(jl, BorderLayout.CENTER);

}

public static void main(String[] args)

{

JFrame test = new JFrame( "Image Pane ");

test.getContentPane().add(new ImagePane());

test.pack();

test.setVisible(true);

test.addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

java对象图的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java对象图怎么画、java对象图的信息别忘了在本站进行查找喔。