Как бросить один объект в другой

Хотя уже ответили, и автор намерен создать приложение типа front controller, но я отправляю буквальное правило для заданной проблемы. если у кого-то проблема такая же.

RewriteEngine On
RewriteRule ^([^/]+)/([^/]+)/([\d]+)$ $1?id=$3 [L]

Выше должно работать для url picture.php/Some-text-goes-here/51. без использования index.php в качестве приложения для перенаправления.

2
задан ghostrider 16 January 2019 в 03:35
поделиться

3 ответа

В java простой способ думать о касте предметов: «Я лгу?» Т.е. если я приведу Пользователя к Сотруднику, я говорю, что Пользователь - Сотрудник. Я лгу? Если так, актерский состав будет работать. Если нет, то не будет. Теперь, согласно вашей логике, вы хотите, чтобы все сотрудники были пользователями. Чтобы установить отношения «есть», вы можете использовать слово «расширяет»

class User{
//Your things
}
class Employee extends User{
//More employee-specific things
}

Теперь, если вы делаете

User john=new User(//args);

Вы можете сделать

if(john instanceof Employee){//Make sure john is an employee
Employee johnEmployee=(Employee)john
}
[ 116] Все, что происходит, это переименование объекта. Но вы не можете лгать ни о чем, что не установлено, когда объект сделан.

0
ответ дан Yonatan Ginsburg 16 January 2019 в 03:35
поделиться

Поскольку Employee и User - это совершенно два разных объекта, поэтому вы не можете разыграть как ваш случай

Простой пример

Пользователь

[ 110]

Сотрудник

public class Employee extends User {
    //constructor
}

Тогда вы можете сделать это

Employee e = new Employee();
Object o = e;
User = (Employee) o;

Конечно, в этом случае вы не можете поступите противоположным образом: приведите User к Employee

Надеюсь, этот небольшой пример поможет вам ясно понять дело.

0
ответ дан Dang Nguyen 16 January 2019 в 03:35
поделиться

Вы не можете привести объект user к объекту employee, так как они не имеют никакого отношения. У вас должен быть некоторый класс Mapper, который отобразит объект User на объект Employee.

class UserToEmployee{
   public Employee map(User user){
       Employee e = new Employee();
       e.setUserId(user.getUserId());
       // so on set all the required properties
      return e;
    }
}

Тогда используйте это как:

User u = new User(12,"johnson","pam",new Date());
UserToEmployee mapper = new UserToEmployee();
Employee e = mapper.map(u)
0
ответ дан Amit Bera 16 January 2019 в 03:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: