Unnötige Instanzvariablen?

Status
Nicht offen für weitere Antworten.

Illuvatar

Top Contributor
Isaac hat gesagt.:
Klassenglobale Variablen sollten so wenig wie möglich eingesetzt werden, es geht auch komplett ohne. Aber sie machen das Leben an vielen Stellen einfacher.

Wetten, dass nicht? Oder wie willst du das hier z.B. ohne Instanzvariablen machen:
Code:
package main;

import sun.net.ftp.*;
import java.io.*;
import sun.net.*;
import java.awt.*;


public class ImgPutter 
{
	private FtpClient ftpc;
	public ImgPutter (String server, String username, String pass) throws IOException
	{
		this.server = server;
		this.username = username;
		this.pass = pass;
		ftpc = new FtpClient ();
		ftpc.openServer (server);
		ftpc.login(username, pass);
		ftpc.binary();
		System.out.println (ftpc.welcomeMsg);
	}
	public void put (File img) throws IOException
	{
		OutputStream os = ftpc.put(img.getName());
		InputStream is = new FileInputStream (img);
		byte[] buf = new byte[1024];
		int len;
		while ((len = is.read(buf)) >= 0){
			os.write(buf, 0, len);
		}
		os.close();
	}
	public void close () throws IOException
	{
		ftpc.closeServer();
	}
}

Nun gut, man könnte aus FTPClient ableiten, oder alles in eine statische Methode zu packen. Das würde aber gegen die OOP allgemein oder zumindest gegen das Prinzip der Kapselung verstoßen. Außerdem wollte ich nur nichts zu langes posten, es gibt auch viele Beispielklassen, wo man sehr viele Instanzvariablen in sehr vielen extern aufgerufenen Methoden benötigt.
 

foobar

Top Contributor
@Isaac Wie sollte man denn ohne Membervariablen vernünftig, objektorientiert programmieren ????? Um Probleme mit dem Zugriff auf Membervariablen respektive Methoden zu lösen, gibt es doch Accessmodifier.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben