• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Czy istnieje w javie coś takiego jak konstruktor konwertujący?

VPS Starter Arubacloud
+2 głosów
526 wizyt
pytanie zadane 12 kwietnia 2015 w Java przez Pestki Nowicjusz (140 p.)
Dzień dobry, jestem nowy na forum, także proszę o wyrozumiałość, mam już trochę doświadczenia przy programowaniu w C++, natomiast jestem początkującym koderem Javy. Otóż mam pewien problem podejrzewam, że banalny jednak w google nie mogłem znaleźć odpowiedzi.

Stworzyłem własną klasę która przechowuje Character, oraz wykonuje na nim moje metody, nadałem jej prosty konstruktor:

    MojCharacter(Character c)
    {
        this.c=c;
    }

Chciałbym teraz stworzyć taką tablicę:

MojCharacter tab = new MojCharacter[][] {     
                 {'w','s','g','h','k','g','s','w'},
                 {'p','p','p','p','p','p','p','p'},    
                 {' ',' ',' ',' ',' ',' ',' ',' '},
                 {' ',' ',' ',' ',' ',' ',' ',' '},
                 {' ',' ',' ',' ',' ',' ',' ',' '},
                 {' ',' ',' ',' ',' ',' ',' ',' '},
                 {'P','P','P','P','P','P','P','P'},
                 {'W','S','G','h','k','G','S','W'}};

I tu pojawia się problem, ponieważ eclipse wyrzuca błąd iż nie da się skonwertować "Character" do "MojCharacter". W C++ było coś takiego jak konsturktor konwertujący, ew. operator konwersji i można było konwertować niejawnie typy wbudowane na własne, czy da się zrobić coś takiego w javie? Czy za każdym razem w takich sytuacjach muszę jawnie wywoływać konstruktor za pomocą operatora new?

Z góry dziekuję za odpowiedź i Pozdrawiam!

2 odpowiedzi

+1 głos
odpowiedź 12 kwietnia 2015 przez Kicany Gaduła (3,220 p.)
Jeżeli nie padnie wcześniej odpowiedź za jaką godzinkę może dwie, pomogę.
komentarz 12 kwietnia 2015 przez Grabarz Bywalec (2,880 p.)
A czemu nie pomożesz wcześniej?
+1 głos
odpowiedź 12 kwietnia 2015 przez Mateusz Dalgiewicz Mądrala (5,270 p.)

Witam,

Masz tutaj przykad za pomoca typow podstawowych i typow opakowujacych :)

public class Main {


	
	public static void main(String[] a){
		
		
		
		MojCharacter[][] tab = new MojCharacter[][]{
			new MojCharacter[]{
					new MojCharacter((Character)'w'),
					new MojCharacter((Character)'s'),
					new MojCharacter((Character)'g'),
					new MojCharacter((Character)'h'),
			},
			new MojCharacter[]{
					new MojCharacter(new Character('p')),
					new MojCharacter(new Character('p')),
					new MojCharacter(new Character('p')),
					new MojCharacter(new Character('p')),
			},
			new MojCharacter[]{
					new MojCharacter(new Character(',')),
					new MojCharacter(new Character(',')),
					new MojCharacter(new Character(',')),
					new MojCharacter(new Character(',')),
			}
		};
		
		
		MojChar[][] tab2 = new MojChar[][]{
				new MojChar[]{
						new MojChar('w'),
						new MojChar('s'),
						new MojChar('g'),
						new MojChar('h'),
				},
				new MojChar[]{
						new MojChar('p'),
						new MojChar('p'),
						new MojChar('p'),
						new MojChar('p')
				},
				new MojChar[]{
						new MojChar(','),
						new MojChar(','),
						new MojChar(',')
				}
		};
	}
		
}

class MojCharacter{
	
	private Character c;
	
	public MojCharacter(Character c) {
		super();
		this.c = c;
	}

	public Character getC() {
		return c;
	}

	public void setC(Character c) {
		this.c = c;
	}
	
	
}

class MojChar{
	
	private char c;
	
	public MojChar(char c) {
		super();
		this.c = c;
	}

	public char getC() {
		return c;
	}

	public void setC(char c) {
		this.c = c;
	}	
}

 

Podobne pytania

0 głosów
1 odpowiedź 1,859 wizyt
0 głosów
3 odpowiedzi 507 wizyt
0 głosów
0 odpowiedzi 123 wizyt

92,417 zapytań

141,222 odpowiedzi

318,983 komentarzy

61,831 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...